Microsoft SQL Server 인스턴스용 두 Amazon Relational Database(Amazon RDS) 간에 SQL Server 로그인 및 암호를 마이그레이션하려고 합니다. 또는 온프레미스 환경에서 또는 온프레미스 환경으로 로그인을 마이그레이션하고 싶습니다.
해결 방법
참고: 기본 사용자 로그인 복제에 대한 지침은 RDS for SQL Server 사용자 로그인 권한을 어떻게 복제할 수 있나요?를 참조하세요.
한 RDS for SQL Server 인스턴스에서 다른 인스턴스로 SQL Server 로그인 마이그레이션
로그인 및 암호를 새 대상 RDS 인스턴스로 마이그레이션하려면 다음 단계를 완료합니다.
- 원본 인스턴스의 스냅샷을 생성합니다.
- 대상 인스턴스에서 다른 이름을 사용하여 스냅샷을 복원합니다.
- 필요하지 않은 로그인과 데이터베이스를 삭제합니다.
로그인을 기존 대상 RDS 인스턴스로 마이그레이션하려면 다음 섹션의 단계를 완료합니다.
RDS for SQL Server에서 온프레미스 환경으로 로그인을 마이그레이션
참고: 다음 해결 방법으로 암호를 수동으로 입력해야 합니다. RDS에서 직접 로그인을 위해 암호화된 암호를 검색할 수 없습니다.
옵션 1:
- 모든 사용자 데이터베이스에서 sp_help_revlogins 저장 프로시저를 생성합니다. 저장 프로시저 스크립트는 SQL Server 인스턴스 간에 로그인 및 암호 전송(Microsoft 웹 사이트)의 방법 2를 참조하세요.
- 저장 프로시저를 실행하여 원본 인스턴스에서 로그인을 스크립팅합니다.
참고: 기본 데이터베이스에서 저장 프로시저를 생성하면 다음 오류가 발생합니다.
"Msg 262, Level 14, State 18, Procedure sp_hexadecimal, Line 1 [Batch Start Line 5]CREATE PROCEDURE permission denied in database 'master'"
이 오류를 방지하려면 하나의 사용자 데이터베이스에서 프로시저를 만드세요. 대상 인스턴스에서 로그인을 생성한 후 암호 불일치를 방지하기 위해 암호를 재설정합니다.
옵션 2:
로그인을 수동으로 생성하거나 Microsoft SQL Server Management Studio(SSMS)를 사용하여 로그인을 스크립팅하려면 다음 단계를 완료하세요.
- SSMS에서 보안 자리 표시자를 연 다음 확장합니다.
- 로그인을 선택한 다음 F7 키를 누릅니다. 또는 보기 메뉴에서 개체 탐색기 세부 정보를 선택합니다.
- 마이그레이션하려는 로그인을 선택하려면 Ctrl 키를 길게 누릅니다.
- 필요한 로그인을 선택한 후 화면을 선택(마우스 오른쪽 버튼 클릭)합니다. 그런 다음 스크립트 로그인을 선택하여 새 쿼리 창을 엽니다.
- 로그인 생성 스크립트를 복사합니다. 그런 다음 암호를 교체하여 대상 인스턴스에서 스크립트를 실행합니다. 저장 프로시저 스크립트는 SQL Server 인스턴스 간에 로그인 및 암호 전송(Microsoft 웹 사이트)의 방법 1을 참조하세요.
온프레미스 환경에서 RDS for SQL Server로 로그인 및 암호 마이그레이션
원본 서버(온프레미스)에서 다음 단계를 완료합니다.
- 온프레미스 서버에서 모든 로그인에 대한 로그인 생성 스크립트를 생성합니다. 저장 프로시저 스크립트는 SQL Server 인스턴스 간에 로그인 및 암호 전송(Microsoft 웹 사이트)의 방법 2를 참조하세요.
- 저장 프로시저를 만든 후 새 T-SQL 창을 엽니다. 그런 다음, 다음 명령을 사용하여 저장 프로시저를 실행합니다.
참고: 스크립트를 실행하기 전에 키보드에서 Ctrl+T를 눌러 결과가 텍스트 형식인지 확인합니다.
EXEC [sp_help_revlogin]
이 쿼리 출력은 대상 서버에서 원래 SID와 암호가 있는 로그인을 만드는 스크립트를 제공합니다.
대상 서버에서 다음 단계를 완료합니다.
- 기본 사용자 계정을 사용하여 RDS for SQL Server 인스턴스에 연결합니다.
- 소스 서버(온프레미스)에서 섹션에서 2단계에서 생성한 스크립트(sp_help_revlogin의 출력)를 실행합니다.
참고: RDS의 로그인에 대한 sysadmin 액세스 권한을 부여할 수 없습니다. 따라서 sysadmin 권한이 있는 로그인을 RDS로 마이그레이션할 때 자동으로 액세스 권한이 부여되지 않습니다. 해당 로그인에 필요한 권한을 명시적으로 부여해야 합니다.
RDS 사용자가 사용할 수 있는 권한 목록은 기본 사용자 계정 권한을 참조하세요.
기본 계정 권한 문제 해결
기본 사용자 이름 찾기
- RDS 콘솔을 엽니다.
- 탐색 창에서 데이터베이스를 선택합니다.
- 기본 사용자 이름을 원하는 RDS DB 인스턴스를 선택합니다.
- 구성 탭을 엽니다. 기본 사용자 이름은 가용성 섹션에 나열되어 있습니다.
기본 사용자 암호 재설정 또는 기본 사용자에 대한 권한 복원
기본 사용자 암호 재설정에 대한 자세한 내용은 Amazon RDS DB 인스턴스의 기본 사용자 암호를 재설정하려면 어떻게 해야 하나요?를 참조하세요.