역할 전환 후 로그인 및 작업 관리(SQL Server)Management of Logins and Jobs After Role Switching (SQL Server)

SQL ServerSQL Server 데이터베이스에 대한 고가용성 또는 재해 복구 솔루션을 배포하는 경우 master 또는 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. 대개 관련 정보에는 주 데이터베이스의 작업과 데이터베이스에 연결해야 하는 프로세스 또는 사용자의 로그인이 포함됩니다.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. 보조/미러 데이터베이스를 호스팅하는 모든 SQL ServerSQL Server 인스턴스에서 이 정보를 복제해야 합니다.You should duplicate this information on any instance of SQL ServerSQL Server that hosts a secondary/mirror database. 가능하다면 역할이 전환된 후 새 주 데이터베이스에서 프로그래밍 방식으로 해당 정보를 다시 생성하는 것이 가장 좋습니다.If possible after roles are switched, it is best to programmatically reproduce the information on the new primary/principal database.

로그인Logins

데이터베이스 복사본을 호스팅하는 모든 서버 인스턴스에서 주 데이터베이스에 대한 액세스 권한이 있는 로그인을 다시 생성해야 합니다.On every server instances that hosts a copy of the database, you should reproduce the logins that have permission to access the principal database. 주 역할이 전환되는 경우 새 주 서버 인스턴스에 로그인이 있는 사용자만 새 주 데이터베이스에 액세스할 수 있습니다.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. 새 주 서버 인스턴스에 로그인이 정의되어 있지 않은 사용자는 분리된 상태가 되어 데이터베이스에 액세스할 수 없습니다.Users whose logins are not defined on the new primary/principal server instance are orphaned and cannot access the database.

사용자가 분리된 경우 새 주 서버 인스턴스에서 로그인을 만들고 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. 자세한 내용은 분리된 사용자 문제 해결(SQL Server)을 실행합니다.For more information, see Troubleshoot Orphaned Users (SQL Server).

SQL Server 인증 또는 로컬 Windows 로그인을 사용하는 응용 프로그램의 로그인 Logins Of Applications That Use SQL Server Authentication or a Local Windows Login

응용 프로그램에서 SQL Server 인증 또는 로컬 Windows 로그인을 사용하는 경우 일치하지 않는 SID로 인해 원격 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. 일치하지 않는 SID로 인해 해당 로그인이 원격 서버 인스턴스에서 분리된 사용자가 됩니다.The mismatched SIDs cause the login to become an orphaned user on the remote server instance. 이 문제는 응용 프로그램이 장애 조치(Failover) 후 미러링된 데이터베이스 또는 로그 전달 데이터베이스에 연결하거나 백업에서 초기화된 복제 구독자 데이터베이스에 연결하는 경우에 발생할 수 있습니다.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.

이 문제를 방지하려면 원격 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. 예방 조치에는 로컬 SQL ServerSQL Server 인스턴스에서 원격 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. 이 문제를 방지하는 방법은 KB 문서 918992SQL 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).

참고

이 문제는 다른 컴퓨터의 Windows 로컬 계정에 영향을 줍니다.This problem affects Windows local accounts on different computers. 하지만 도메인 계정에서는 SID가 각 컴퓨터에서 동일하기 때문에 이러한 문제가 발생하지 않습니다.However, this problem does not occur for domain accounts because the SID is the same on each of the computers.

자세한 내용은 데이터베이스 미러링 및 로그 전달에서의 분리된 사용자 (데이터베이스 엔진 블로그)를 참조하세요.For more information, see Orphaned Users with Database Mirroring and Log Shipping (a Database Engine blog).

작업Jobs

백업과 같은 작업에는 특별한 주의가 필요합니다.Jobs, such as backup jobs, require special consideration. 일반적으로 역할 전환 후 데이터베이스 소유자 또는 시스템 관리자는 새 주 데이터베이스의 작업을 다시 만들어야 합니다.Typically, after a role switch, the database owner or system administrator must re-create the jobs for the new primary/principal database.

이전 주 서버 인스턴스를 사용할 수 있는 경우 해당 SQL ServerSQL Server인스턴스에서 원래 작업을 삭제해야 합니다.When the former primary/principal server instance is available, you should delete the original jobs on that instanceof SQL ServerSQL Server. 현재 미러 데이터베이스가 RESTORING 상태에 있어서 사용할 수 없으므로 현재 미러 데이터베이스의 작업은 실패합니다.Note that jobs on the current mirror database fail because it is in the RESTORING state, making it unavailable.

참고

SQL ServerSQL Server 인스턴스는 드라이브 문자를 다르게 지정하는 등의 방법으로 서로 다르게 구성할 수 있습니다.Different instances of SQL ServerSQL Server might be configured differently, with different drive letters or such. 각 파트너에 대한 작업 시 이러한 모든 차이점을 감안해야 합니다.The jobs for each partner must allow for any such differences.

참고 항목See Also

다른 서버 인스턴스에서 데이터베이스를 사용할 수 있도록 할 때 메타데이터 관리(SQL Server) Manage Metadata When Making a Database Available on Another Server Instance (SQL Server)
분리된 사용자 문제 해결(SQL Server) Troubleshoot Orphaned Users (SQL Server)