Gestion des connexions et des travaux après un basculement de rôle (SQL Server)Management of Logins and Jobs After Role Switching (SQL Server)

Lors du déploiement d’une solution de récupération d’urgence ou haute disponibilité pour une base de données SQL ServerSQL Server , il est important de reproduire les informations importantes stockées pour la base de données dans les bases de données master ou msdb .When deploying a high-availability or disaster-recovery solution for a SQL ServerSQL Server database, it is important to reproduce relevant information that is stored for the database in the master or msdb databases. En général, les informations importantes incluent les travaux de la base de données primaire/principale et les connexions des utilisateurs ou des processus qui doivent se connecter à la base de données.Typically, the relevant information includes the jobs of the primary/principal database and the logins of users or processes that need to connect to the database. Vous devez dupliquer ces informations dans une instance de SQL ServerSQL Server qui héberge une base de données secondaire/miroir.You should duplicate this information on any instance of SQL ServerSQL Server that hosts a secondary/mirror database. Si possible, il est préférable de reproduire, par programmation, l'information au niveau de la nouvelle base de données primaire/principale, après le basculement des rôles.If possible after roles are switched, it is best to programmatically reproduce the information on the new primary/principal database.

ConnexionsLogins

Sur chaque instance de serveur qui héberge une copie de la base de données, vous devez reproduire les connexions qui sont autorisées à accéder à la base de données principale.On every server instances that hosts a copy of the database, you should reproduce the logins that have permission to access the principal database. Lorsque le rôle primaire/principal bascule, seuls les utilisateurs dont les connexions existent sur la nouvelle instance de serveur primaire/principal peuvent accéder à la nouvelle base de données primaire/principale.When the primary/principal role switches, only users whose logins exist on the new primary/principal server instance can access the new primary/principal database. Les utilisateurs dont les connexions ne sont pas définies sur la nouvelle instance de serveur primaire/principal sont orphelins et ne peuvent pas accéder à la base de données.Users whose logins are not defined on the new primary/principal server instance are orphaned and cannot access the database.

Si un utilisateur est orphelin, créez la connexion sur la nouvelle instance de serveur primaire/principal et exécutez sp_change_users_login.If a user is orphaned, create the login on the new primary/principal server instance and run sp_change_users_login. Pour plus d’informations, consultez Dépanner des utilisateurs orphelins (SQL Server).For more information, see Troubleshoot Orphaned Users (SQL Server).

Connexions des applications qui utilisent l'authentification SQL Server ou une connexion locale Windows Logins Of Applications That Use SQL Server Authentication or a Local Windows Login

Si une application utilise l'authentification SQL Server ou une connexion locale Windows, des SID incompatibles peuvent empêcher la résolution de la connexion de l'application sur une instance distante de SQL ServerSQL Server.If an application uses SQL Server Authentication or a local Windows login, mismatched SIDs can prevent the application's login from resolving on a remote instance of SQL ServerSQL Server. En cas de SID incompatibles, la connexion peut se solder par un utilisateur orphelin sur l'instance de serveur distante.The mismatched SIDs cause the login to become an orphaned user on the remote server instance. Ce problème peut se produire lorsqu'une application se connecte à une base de données de copie des journaux de transaction ou une base de données mise en miroir suite à un basculement ou à une base de données d'abonné de réplication qui a été initialisée à partir d'une sauvegarde.This issue can occur when an application connects to a mirrored or log shipping database after a failover or to a replication subscriber database that was initialized from a backup.

Pour éviter ce problème, nous vous recommandons de prendre des mesures préventives lorsque vous configurez une telle application de manière à utiliser une base de données hébergée par une instance distante de SQL ServerSQL Server.To prevent this issue, we recommend that you take preventative measures when you set up such an application to use a database that is hosted by a remote instance of SQL ServerSQL Server. La prévention implique de transférer des connexions et des mots de passe de l'instance locale de SQL ServerSQL Server à l'instance distante de SQL ServerSQL Server.Prevention involves transferring the logins and the passwords from the local instance of SQL ServerSQL Server to the remote instance of SQL ServerSQL Server. Pour plus d’informations sur la manière d’éviter ce problème, consultez l’article 918992 de la Base de connaissances :Comment faire pour transférer des noms d’accès et des mots de passe entre instances de SQL Server.For more information about how to prevent this issue, see KB article 918992 —How to transfer logins and passwords between instances of SQL Server).

Note

Ce problème affecte les comptes Windows locaux sur différents ordinateurs.This problem affects Windows local accounts on different computers. Toutefois, ce problème ne se pose pas pour les comptes de domaine car le SID est identique sur chacun des ordinateurs.However, this problem does not occur for domain accounts because the SID is the same on each of the computers.

Pour plus d’informations, consultez Orphaned Users with Database Mirroring and Log Shipping (Utilisateurs orphelins avec mise en miroir de bases de données et copie des journaux de transaction) (blog du moteur de base de données).For more information, see Orphaned Users with Database Mirroring and Log Shipping (a Database Engine blog).

TravauxJobs

Les travaux tels que les travaux de sauvegarde, requièrent une attention particulière.Jobs, such as backup jobs, require special consideration. Généralement, après un basculement de rôle, le propriétaire de la base de données ou l'administrateur système doit recréer les travaux de la nouvelle base de données primaire/principale.Typically, after a role switch, the database owner or system administrator must re-create the jobs for the new primary/principal database.

Lorsque l'ancienne instance de serveur primaire/principal est disponible, vous devez supprimer les travaux originaux sur cette instance de SQL ServerSQL Server.When the former primary/principal server instance is available, you should delete the original jobs on that instanceof SQL ServerSQL Server. Notez que ces travaux de la base de données miroir actuelle échouent dans la mesure où celle-ci se trouve en état de restauration (RESTORING) et qu'elle n'est ainsi pas disponible.Note that jobs on the current mirror database fail because it is in the RESTORING state, making it unavailable.

Note

Différentes instances de SQL ServerSQL Server peuvent être configurées différemment, avec des lettres de lecteurs de lecteur différentes, ou quelque chose d'équivalent.Different instances of SQL ServerSQL Server might be configured differently, with different drive letters or such. Les travaux de chaque partenaire doivent autoriser de telles différences.The jobs for each partner must allow for any such differences.

Voir aussiSee Also

Gérer les métadonnées lors de la mise à disposition d’une base de données sur une autre instance de serveur (SQL Server) Manage Metadata When Making a Database Available on Another Server Instance (SQL Server)
Dépanner des utilisateurs orphelins (SQL Server) Troubleshoot Orphaned Users (SQL Server)