Amazon Relational Database Service (Amazon RDS) for SQL Server에서 서버 측 추적을 읽고 싶습니다.
간략한 설명
Amazon RDS는 관리형 서비스이므로 사용자에게 운영 체제에 대한 액세스 권한을 제공하지 않습니다. 자체 호스팅된 SQL Server 설치를 사용하는 경우 호스트에 액세스할 수 있습니다. 프로파일러 GUI를 사용하여 추적 파일을 열 수도 있습니다. 클라이언트 측 추적을 실행하여 Amazon RDS DB 인스턴스에 원격으로 연결한 다음 추적을 수집할 수 있습니다. 그러면 추적 파일이 원격 클라이언트에 생성됩니다. 프로파일러는 클라이언트 측 도구이기 때문에 연결이 끊어지면 추적이 중지됩니다. 연결이 끊어지는 것을 방지하려면 서버 측 추적을 실행할 수 있습니다.
해결 방법
T-SQL 문을 사용하여 서버 측 추적 읽기
-
다음 T-SQL 문과 유사한 명령을 실행하여 서버에서 현재 실행 중인 추적을 확인합니다.
select * from sys.traces;
sys.traces 카탈로그 보기에는 시스템에서 현재 실행 중인 추적이 포함되어 있습니다. 출력에서 추적 값의 경로를 확인하세요. 2단계와 3단계에 이 경로가 필요합니다.
-
다음 fn_trace_gettable 함수와 유사한 명령을 실행하여 추적 파일을 읽습니다.
select * from ::fn_trace_gettable('enter_trace_output_value', default);
참고: enter_trace_output_value을 1단계에서 출력한 추적 값으로 바꿉니다.
-
선택적으로 서버 측 추적 결과를 데이터베이스 테이블에 저장할 수 있습니다. 그런 다음, 다음 fn_trace_gettable 함수와 유사한 명령을 실행하여 데이터베이스 테이블을 튜닝 어드바이저의 워크로드로 사용할 수 있습니다.
SELECT * INTO RDSTrace
FROM fn_trace_gettable('enter_trace_output_value', default);
참고: enter_trace_output_value을 1단계에서 출력한 추적 값으로 바꿉니다.
이 명령은 D:\rdsdbdata\Log 디렉터리에 있는 RDSTrace.trc라는 이름의 모든 파일 결과를 로드합니다. 여기에는 RDSTrace_1.trc와 같은 모든 롤오버 파일이 현재 데이터베이스에 있는 RDSTrace라는 테이블에 포함됩니다.
추적 및 덤프 파일이 누적되면 디스크 공간을 가득 채울 수 있습니다. 기본적으로 Amazon RDS는 7일 이상 지난 추적 및 덤프 파일을 제거합니다. rds_set_configuration 저장 절차를 사용하여 추적 파일의 보존 기간을 수정하여 추적 파일 보존을 설정할 수 있습니다. 다음 저장 프로시저는 추적 파일 보존 기간을 24시간(1440분)으로 설정합니다.
exec rdsadmin..rds_set_configuration 'tracefile retention', 1440;
관련 정보
추적 및 덤프 파일 작업
마이크로소프트 SQL 서버 데이터베이스 로그 파일
데이터베이스 엔진 튜닝 어드바이저를 사용하여 Amazon RDS for SQL Server DB 인스턴스에서 데이터베이스 워크로드 분석
Amazon RDS for Microsoft SQL Server