기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
아래에는 AWS DMS 마이그레이션 구성에서 온프레미스 또는 Amazon RDS for SQL Server 데이터베이스를 분석하는 데 사용 가능한 진단 지원 스크립트의 설명이 나와 있습니다. 이러한 스크립트는 소스 또는 대상 엔드포인트에서 작동합니다. 온프레미스 데이터베이스의 경우, sqlcmd 명령줄 유틸리티에서 이러한 스크립트를 실행합니다. 이 유틸리티 사용에 대한 자세한 내용은 Microsoft 설명서의 sqlcmd - Use the utility
Amazon RDS 데이터베이스의 경우에는 sqlcmd 명령줄 유틸리티를 사용하여 연결할 수 없습니다. 대신 Amazon RDS SQL Server에 연결되는 클라이언트 도구를 사용하여 이러한 스크립트를 실행합니다.
스크립트를 실행하기 전에, 사용하려는 사용자 계정에 SQL Server 데이터베이스에 액세스하는 데 필요한 권한이 있는지 확인합니다. 온프레미스 및 Amazon RDS 데이터베이스의 경우, SysAdmin
역할 없이도 SQL Server 데이터베이스에 액세스할 때 사용하는 것과 동일한 권한을 사용할 수 있습니다.
온프레미스 SQL Server 데이터베이스에 대한 최소 권한 설정
온프레미스 SQL Server 데이터베이스를 실행하기 위한 최소 권한을 설정하려면
-
SQL Server Management Studio(SSMS)를 사용하여 암호 인증이 있는 새 SQL Server 계정을 생성합니다(예:
).on-prem-user
-
SSMS의 사용자 매핑 섹션에서 MSDB 및 MASTER 데이터베이스(공용 권한 제공)를 선택하고, 스크립트를 실행할 데이터베이스에
DB_OWNER
역할을 할당합니다. -
새 계정의 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 열고, 보안을 선택한 후 명시적으로
Connect SQL
권한을 부여합니다. -
아래의 grant 명령을 실행합니다.
GRANT VIEW SERVER STATE TO
on-prem-user
; USE MSDB; GRANT SELECT ON MSDB.DBO.BACKUPSET TOon-prem-user
; GRANT SELECT ON MSDB.DBO.BACKUPMEDIAFAMILY TOon-prem-user
; GRANT SELECT ON MSDB.DBO.BACKUPFILE TOon-prem-user
;
Amazon RDS SQL Server 데이터베이스에 대한 최소 권한 설정
Amazon RDS SQL Server 데이터베이스에 대한 최소 권한으로 실행하려면
-
SQL Server Management Studio(SSMS)를 사용하여 암호 인증이 있는 새 SQL Server 계정을 생성합니다(예:
).rds-user
-
SSMS의 사용자 매핑 섹션에서 MSDB 데이터베이스(공용 권한 제공)를 선택하고, 스크립트를 실행할 데이터베이스에
DB_OWNER
역할을 할당합니다. -
새 계정의 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 열고, 보안을 선택한 후 명시적으로
Connect SQL
권한을 부여합니다. -
아래의 grant 명령을 실행합니다.
GRANT VIEW SERVER STATE TO
rds-user
; USE MSDB; GRANT SELECT ON MSDB.DBO.BACKUPSET TOrds-user
; GRANT SELECT ON MSDB.DBO.BACKUPMEDIAFAMILY TOrds-user
; GRANT SELECT ON MSDB.DBO.BACKUPFILE TOrds-user
;
SQL Server 지원 스크립트
다음 주제에서는 SQL Server에 사용할 수 있는 각 지원 스크립트를 다운로드, 검토, 실행하는 방법을 설명합니다. 스크립트 출력을 검토하고 이를 AWS Support 사례에 업로드하는 방법도 설명합니다.
awsdms_support_collector_sql_server.sql 스크립트
awsdms_support_collector_sql_server.sql
참고
이 SQL Server 진단 지원 스크립트는 SQL Server 2014 이상 버전에서만 실행합니다.
이 스크립트는 SQL Server 데이터베이스 구성에 대한 정보를 수집합니다. 스크립트의 체크섬을 반드시 확인하고, 체크섬이 확인되면 스크립트의 SQL 코드를 검토하여 실행하기에 부적합한 코드는 모두 주석 처리합니다. 스크립트의 무결성 및 내용에 만족한다면 스크립트를 실행해도 됩니다.
온프레미스 SQL Server 데이터베이스용 스크립트를 실행하려면
-
아래의 sqlcmd 명령줄을 사용하여 스크립트를 실행합니다.
sqlcmd -U
on-prem-user
-Ppassword
-SDMS-SQL17AG-N1 -y 0 -iC:\Users\admin\awsdms_support_collector_sql_server.sql -oC:\Users\admin\DMS_Support_Report_SQLServer.html -dsqlserverdb01지정된 sqlcmd 명령 파라미터에는 다음 내용이 포함됩니다.
-
-U
– 데이터베이스 사용자 이름. -
-P
– 데이터베이스 사용자 암호. -
-S
– SQL Server 데이터베이스 서버 이름. -
-y
– sqlcmd 유틸리티의 최대 출력 열 너비. 값이 0이면 너비가 무제한인 열이 지정됩니다. -
-i
– 실행할 지원 스크립트의 경로(이 경우awsdms_support_collector_sql_server.sql
). -
-o
– 수집된 데이터베이스 구성 정보가 포함된 출력 HTML 파일의 경로(지정한 파일 이름 포함). -
-d
– SQL Server 데이터베이스 이름.
-
-
스크립트가 완료되면 출력 HTML 파일을 검토하고, 공유하기에 부적합한 정보는 모두 제거합니다. HTML을 공유해도 괜찮다면 AWS Support 사례에 파일을 업로드합니다. 이 파일 업로드에 대한 자세한 내용은 AWS DMS에서 진단 지원 스크립트 작업 섹션을 참조하세요.
Amazon RDS for SQL Server에서는 sqlcmd 명령줄 유틸리티를 사용하여 연결할 수 없으므로, 다음 프로시저를 사용합니다.
온프레미스 RDS SQL Server 데이터베이스용 스크립트를 실행하려면
-
RDS SQL Server에
Master
사용자로 연결하고 출력을 HTML 파일로 저장할 수 있는 클라이언트 도구를 사용하여 스크립트를 실행합니다. -
출력 HTML 파일을 검토하고, 공유하기에 부적합한 정보는 모두 제거합니다. HTML을 공유해도 괜찮다면 AWS Support 사례에 파일을 업로드합니다. 이 파일 업로드에 대한 자세한 내용은 AWS DMS에서 진단 지원 스크립트 작업 섹션을 참조하세요.