데이터베이스 미러링의 로그인 계정 설정
두 서버 인스턴스가 데이터베이스 미러링 세션에서 통신하려면 각 인스턴스의 로그인 계정에 다른 인스턴스에 대한 액세스 권한이 있어야 합니다. 또한 각 로그인 계정에는 다른 인스턴스의 데이터베이스 미러링 끝점에 대한 CONNECT 권한도 있어야 합니다. 끝점에 대한 자세한 내용은 데이터베이스 미러링 끝점을 참조하십시오.
사용자 로그인 만들기
master 또는 msdb 시스템 데이터베이스의 정보는 미러링할 수 없습니다. 따라서 모든 데이터베이스 사용자에 대해 역할 전환이 효과적으로 작동하려면 주 서버 인스턴스에서 연결 권한을 가진 사용자 로그인이 미러 서버 인스턴스에도 있어야 합니다.
이 요구 사항의 영향은 미러링 파트너가 동일한 도메인 사용자 계정으로 실행되는지 여부에 따라 달라집니다.
- 파트너가 동일한 도메인 사용자 계정으로 실행되는 경우 올바른 사용자 로그인이 자동으로 두 master 데이터베이스에 모두 포함됩니다. 데이터베이스에 대한 간단한 보안 구성으로 권장됩니다.
- 파트너 서버 인스턴스가 다른 사용자 계정으로 실행되는 경우 주 서버 인스턴스의 사용자 로그인을 미러 서버 인스턴스에서 수동으로 재생해야 합니다. 역할 전환 후 분리된 사용자를 방지하려면 주 데이터베이스와 미러 데이터베이스에서 동일한 사용자 로그인 집합을 정기적으로 유지 관리해야 합니다. 그러나 역할 전환 후 사용자가 분리되었을 때 바로 해당 로그인을 설정할 수 있습니다.
다른 계정에 대한 로그인 만들기
두 서버 인스턴스가 다른 계정으로 실행되는 경우 시스템 관리자는 CREATE LOGIN Transact-SQL 문을 사용하여 서버 인스턴스마다 master 데이터베이스의 syslogins 테이블에서 원격 인스턴스의 시작 서비스 계정에 대한 로그인을 만들 수 있습니다. 자세한 내용은 CREATE LOGIN(Transact-SQL)을 참조하십시오.
중요: |
---|
도메인이 아닌 계정에서 SQL Server를 실행하는 경우 인증서를 사용해야 합니다. 자세한 내용은 데이터베이스 미러링에 대한 인증서 사용를 참조하십시오. |
예를 들어 loginA에서 실행되는 sqlA 서버 인스턴스의 경우 loginB에서 실행되는 sqlB 서버 인스턴스에 연결하려면 loginA는 sqlB의 syslogins 테이블에 있어야 하고 loginB는 sqlA의 syslogins 테이블에 있어야 합니다. 또한 미러링 모니터 서버 인스턴스(sqlC)가 있고 서버 인스턴스 3개가 서로 다른 도메인 계정으로 실행되는 데이터베이스 미러링 세션의 경우 다음 로그인을 만들어야 합니다.
인스턴스 | 로그인을 만들고 CONNECT 권한 부여할 대상 |
---|---|
sqlA |
sqlB 및 sqlC |
sqlB |
sqlA 및 sqlC |
sqlC |
sqlA 및 sqlB |
[!참고] 도메인 사용자 대신 컴퓨터 계정을 사용하여 네트워크 서비스 계정과 연결할 수 있습니다. 컴퓨터 계정을 사용하는 경우 다른 서버 인스턴스의 사용자로 추가해야 합니다.
CONNECT 권한 부여
서버 인스턴스에 로그인을 만든 후에는 해당 로그인에 서버 인스턴스의 데이터베이스 미러링 끝점에 연결할 권한을 부여해야 합니다. 시스템 관리자는 GRANT Transact-SQL 문을 사용하여 CONNECT 권한을 부여합니다. 자세한 내용은 GRANT(Transact-SQL)를 참조하십시오.
[!참고] 끝점에 대한 자세한 내용은 데이터베이스 미러링 끝점을 참조하십시오.
Windows 인증을 사용하려면