SQL Server 온-프레미스 및 하이브리드 시나리오에 대한 문제 해결 및 진단 도구
적용 대상: SQL Server
소개
SQL Server 하이브리드에 대한 Microsoft 제품 지원은 문제 해결 도구를 사용하여 고객이 로그를 수집하고 기술 문제를 좁힐 수 있도록 지원합니다. 이러한 도구는 공개적으로 사용할 수 있습니다. 이 문서에서는 SQL Server 제품 지원 엔지니어가 사용했던 진단 도구를 요약합니다. 이 문서에서는 다양한 문제 해결 시나리오를 자세히 설명하며 해당 로그 수집 및 로그 분석 도구를 보여 줍니다.
SQL Server용 진단 도구
시나리오 | 수집할 기본 로그 | 로그를 수집하는 도구 | 로그를 분석하는 도구 |
---|---|---|---|
가용성 그룹 | - 클러스터 로그 - 이벤트 로그 - 시스템 모니터(성능 모니터 로그) - SQL Server 오류 로그 - SQLDIAG XEL 파일 - AlwaysOn Health 세션 XEL 파일 - 시스템 상태 세션 XEL 파일 - AG 데이터 이동을 위한 확장 이벤트 - AG에 대한 DMV 및 카탈로그 뷰 스냅샷 |
- 기본 설정: SQL LogScout 시나리오 "AlwaysOn"을 사용합니다. - 대안: TSSv2 시나리오 "SQL Base"를 사용합니다. - 대안: PSSDIAG 사용자 지정 진단 "Always On 기본 정보"를 사용합니다. |
- 기본 설정: AGDiag 사용할 시나리오: 장애 조치(failover) 및 실패 분석 - 대안: SQL 넥서스 사용할 시나리오: 성능, 대기 시간, 상태 및 모범 사례. |
성능 저하 | - 확장 이벤트(XEvent) 추적은 일괄 처리 수준 시작/완료된 이벤트, 오류 및 경고, 로그 증가/축소, 잠금 에스컬레이션 및 시간 제한, 교착 상태, 로그인/로그아웃을 캡처합니다. - SQL 추적 및 Xevents를 적극적으로 실행하는 목록 - 대기/차단 및 높은 CPU 쿼리를 추적하는 SQL DMV의 스냅샷 - 데이터 저장소 정보 쿼리(활성 상태인 경우) - tempdb SQL DMV/시스템 뷰의 경합 정보- 연결된 서버 메타데이터(SQL DMV/시스템 뷰) - Service Broker 구성 정보(SQL DMV/시스템 뷰) |
- 기본 설정: SQL LogScout 시나리오 "GeneralPerf", "DetailedPerf" 또는 "LightPerf"를 사용합니다. - 대안: PSSDIAG 시나리오 "일반 성능", "자세한 성능" 또는 "가벼운 성능"을 사용합니다. |
- 기본 설정: SQL 넥서스 사용할 시나리오: 성능 분석, 모범 사례 권장 사항, 병목 상태 분석, 차단 및 상위 쿼리. - 대안: RML 유틸리티 사용할 시나리오: 쿼리 분석을 통해 상위 리소스 사용 쿼리를 이해합니다. |
Connection | - BID 추적/드라이버 추적 - 네트워크 추적 - 인증 추적 - SQL Server 오류 로그 - Windows 이벤트 로그 NETSTAT 및 TASKLIST의 스냅샷 |
- 기본 설정: SQL 추적 INI 파일에서 컬렉션 설정을 구성합니다. - 대안: SQL LogScout 시나리오 "NetworkTrace"를 사용합니다. - 대안: SSPICLIENT SSPI 또는 Kerberos 오류가 발생할 때 이 도구를 사용하고 분석을 위해 자세한 추적을 기록합니다. |
- 기본 설정: SQL Network Analyzer UI SQL 네트워크 분석기 사용할 시나리오: 네트워크 패킷 캡처 파일을 읽고 잠재적 관심 영역을 강조 표시하는 보고서를 생성합니다. - 대안: SQLCHECK 연결에 영향을 줄 수 있는 모든 설정에 대해 보고합니다. - 대안: SQLBENCH 비교 분석을 위한 타이밍을 표시합니다. - 대안: DBTEST 연결하는 데 걸리는 시간과 명령을 실행하는 데 걸리는 시간을 기록합니다. |
복제 | - SQL Server 오류 로그 - 복제, CDC, CT 진단 정보(SQL DMV/시스템 보기) |
- 기본 설정: SQL LogScout 데이터 수집 시나리오 사용 "복제" - 대안: PSSDIAG 사용자 지정 진단 "복제"를 사용합니다. |
- 기본 설정: SQL 넥서스 사용할 시나리오: 복제 보고서, 성능 분석, 모범 사례 권장 사항, 병목 상태 분석, 차단 및 상위 쿼리. |
설치/설정 | - 모든 설정 로그가 있는 부트스트랩 폴더 설정 | - 기본 설정: SQL LogScout 데이터 수집 시나리오 "설정"을 사용합니다. |
|
백업/복원 | - 백업/복원 진행률 Xevent(backup_restore_progress_trace) - 백업 복원 진행률에 대한 추적 플래그 - SQL VSS 기록기 로그(SQL Server 2019 이상 버전) - VSS 백업 관련 시나리오에 대한 VSS 관리자(OS) 로그 - 성능 모니터 |
- 기본 설정: SQL LogScout 데이터 수집 시나리오 "BackupRestore"를 사용합니다. |
|
메모리 사용량 | - 메모리 클럭 DMV 또는 DBCC MEMORYSTATUS - 성능 모니터 |
- 기본 설정: SQL LogScout 데이터 수집 시나리오 "메모리"를 사용합니다. |
- 기본 설정: SQL 넥서스 사용 시나리오: 메모리 브로커에서 메모리 출력 및 보기 가져오기 |
메모리 덤프 | - 특정 t-shooting 시나리오에 대해 캡처된 수동 메모리 덤프 - 예외 시나리오에 대해 자동으로 생성된 메모리 덤프 |
- 기본 설정: SQL LogScout 데이터 수집 시나리오 "DumpMemory"를 사용합니다. - 대안: SQLDumper - 대안: TSS V2 시나리오 "SQL Base"를 사용하여 기존 메모리 덤프를 수집합니다. |
- 기본 설정: WinDbg(Windows용 디버깅 도구) 사용할 시나리오: 메모리 덤프 로드 및 분석 - 대안: SQL CallStack 해결 프로그램 |
데이터베이스 손상 | SQL I/O 패턴 스트레스 시뮬레이션 | SQLIOSim |