Amazon RDS for SQL Server에서 서버 측 추적을 읽으려면 어떻게 해야 하나요?

2분 분량
0

Amazon Relational Database Service (Amazon RDS) for SQL Server에서 서버 측 추적을 읽고 싶습니다.

간략한 설명

Amazon RDS는 관리형 서비스이므로 사용자에게 운영 체제에 대한 액세스 권한을 제공하지 않습니다. 자체 호스팅된 SQL Server 설치를 사용하는 경우 호스트에 액세스할 수 있습니다. 프로파일러 GUI를 사용하여 추적 파일을 열 수도 있습니다. 클라이언트 측 추적을 실행하여 Amazon RDS DB 인스턴스에 원격으로 연결한 다음 추적을 수집할 수 있습니다. 그러면 추적 파일이 원격 클라이언트에 생성됩니다. 프로파일러는 클라이언트 측 도구이기 때문에 연결이 끊어지면 추적이 중지됩니다. 연결이 끊어지는 것을 방지하려면 서버 측 추적을 실행할 수 있습니다.

해결 방법

T-SQL 문을 사용하여 서버 측 추적 읽기

  1. 다음 T-SQL 문과 유사한 명령을 실행하여 서버에서 현재 실행 중인 추적을 확인합니다.

    select * from sys.traces;

    sys.traces 카탈로그 보기에는 시스템에서 현재 실행 중인 추적이 포함되어 있습니다. 출력에서 추적 값의 경로를 확인하세요. 2단계와 3단계에 이 경로가 필요합니다.

  2. 다음 fn_trace_gettable 함수와 유사한 명령을 실행하여 추적 파일을 읽습니다.

    select * from ::fn_trace_gettable('enter_trace_output_value', default);

    참고: enter_trace_output_value을 1단계에서 출력한 추적 값으로 바꿉니다.

  3. 선택적으로 서버 측 추적 결과를 데이터베이스 테이블에 저장할 수 있습니다. 그런 다음, 다음 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