SQL Server용 RML(Markup Language) 유틸리티 재생
이 문서에서는 지원 전문가가 Microsoft SQL Server 문제를 해결하는 데 사용하는 도구 그룹에 대해 설명합니다.
원래 제품 버전: SQL Server
원래 KB 번호: 944837
소개
SQL Server 지원 팀은 내부적으로 작성된 여러 도구를 사용하여 일반적인 고객 지원 사례를 처리합니다. SQL Server용 RML(재생 태그 언어) 유틸리티는 데이터베이스 개발자와 시스템 관리자가 사용할 수 있는 특정 도구 모음 중 하나입니다.
자세한 정보
SQL Server용 RML 유틸리티를 사용하여 다음 작업을 수행할 수 있습니다.
- 최대 리소스를 사용하는 애플리케이션, 데이터베이스, SQL Server 로그인 또는 쿼리를 확인합니다.
- 일괄 처리에 대한 추적을 캡처할 때 일괄 처리에 대한 실행 계획이 변경되는지 여부를 확인합니다. 또한 SQL Server용 RML 유틸리티를 사용하여 SQL Server에서 이러한 계획을 실행하는 방법을 결정할 수 있습니다.
- 느리게 실행되는 쿼리를 확인합니다.
SQL Server 인스턴스에 대한 추적을 캡처한 후 SQL Server용 RML 유틸리티를 사용하여 SQL Server의 다른 인스턴스에 대해 추적 파일을 재생할 수 있습니다. 또한 재생 중에 추적을 캡처하는 경우 SQL Server용 RML 유틸리티를 사용하여 새 추적 파일을 원래 추적 파일과 비교할 수 있습니다. 이 기술을 사용하여 변경 내용을 적용한 후 SQL Server의 동작 방식을 테스트할 수 있습니다. 예를 들어 다음 작업을 수행한 후 이 기술을 사용하여 SQL Server의 작동 방식을 테스트할 수 있습니다.
- SQL Server 서비스 팩 설치
- SQL Server 핫픽스 설치
- 저장 프로시저 또는 함수 업데이트
- 인덱스 업데이트 또는 인덱스 만들기
버전 기록
버전 번호 | 설명 |
---|---|
09.04.0103 | Microsoft 다운로드 센터에서 사용할 수 있는 현재 웹 릴리스를 나타냅니다. 릴리스된 모든 버전의 SQL Server(SQL Server 2022, SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2 및 SQL Server 2008)를 지원합니다. |
09.04.0102 | Microsoft 다운로드 센터에서 사용할 수 있는 이전 웹 릴리스를 나타냅니다. 릴리스된 모든 버전의 SQL Server(SQL Server 2022, SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2 및 SQL Server 2008)를 지원합니다. |
9.04.0100 | Microsoft 다운로드 센터에서 사용할 수 있는 이전 웹 릴리스를 나타냅니다. 릴리스된 모든 버전의 SQL Server(SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 및 SQL Server 2000)를 지원합니다. |
9.04.0098 | 데이터베이스 실험 도우미 도구에 포함된 이전 웹 릴리스 패키지를 나타냅니다. 릴리스된 모든 버전의 SQL Server를 지원합니다. |
9.04.0097 | 릴리스된 모든 버전의 SQL Server를 지원하는 SQL Nexus 사이트에서 사용할 수 있는 현재 릴리스를 나타냅니다. |
9.04.0051 | SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 및 SQL Server 2000을 지원하는 Microsoft 다운로드 센터에서 사용할 수 있는 이전 웹 릴리스입니다. |
9.04.0004 | SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 및 SQL Server 2000을 지원하는 이전 웹 릴리스입니다. |
9.01.0109 | SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 및 SQL Server 2000을 지원하는 이전 웹 릴리스입니다. |
9.00.0023 | SQL Server 2005 및 SQL Server 2000을 지원하는 이전 웹 릴리스입니다. |
8.10.0010 | SQL Server 2000 및 SQL Server 7.0을 지원하는 초기 웹 릴리스입니다. |
SQL Server용 RML 유틸리티의 현재 버전은 이전 버전을 대체합니다. 현재 버전을 설치하기 전에 이전 버전의 SQL Server용 RML 유틸리티를 제거해야 합니다. 도구 모음의 현재 버전에는 중요한 소프트웨어 업데이트, 향상된 기능(프로세스 .trc 및 .xel 파일) 및 보고서, 성능 및 확장성 향상이 포함되어 있습니다.
SQL Server용 RML 유틸리티 가져오기
SQL Server용 RML 유틸리티는 Microsoft 다운로드 센터에서 다운로드할 수 있습니다.
데이터베이스 실험 도우미 설치한 후 폴더에서 RML 도구(
ReadTrace
및OStress
)를C:\Program Files (x86)\Microsoft Corporation\Database Experimentation Assistant\Dependencies\X64\
찾습니다.
참고 항목
Microsoft는 SQL Server용 RML 유틸리티를 있는 그대로 제공합니다. Microsoft CSS(고객 지원 서비스)는 제품군에 대한 지원 또는 업데이트를 제공하지 않습니다. 제안이 있거나 버그를 보고하려는 경우 도움말 파일(RML Help.pdf)의 "문제 및 지원" 항목에서 전자 메일 주소를 사용할 수 있습니다. 도움말 파일은 SQL Server용 RML 유틸리티에 포함되어 있습니다.
SQL Server용 RML 유틸리티의 이점
SQL Server용 RML 유틸리티는 실제 애플리케이션을 사용하여 테스트하는 것이 비실용적이거나 불가능한 경우 애플리케이션 테스트를 시뮬레이션하려는 경우에 유용합니다. 테스트 환경에서는 프로덕션 환경에 존재하는 동일한 사용자 부하를 생성하기 어려울 수 있습니다. SQL Server용 RML 유틸리티를 사용하여 테스트 환경에서 프로덕션 워크로드를 재생하고 변경 내용의 성능 효과를 평가할 수 있습니다. 예를 들어 SQL Server 2008로 업그레이드하거나 SQL Server 서비스 팩의 애플리케이션을 테스트할 수 있습니다. 또한 SQL Server용 RML 유틸리티를 사용하여 다양한 재생 워크로드를 분석하고 비교할 수 있습니다. 이러한 종류의 회귀 분석은 수동으로 수행해야 하는 어려운 프로세스가 될 수 있습니다.
도움말 파일에는 빠른 시작 항목이 포함되어 있습니다. 이 항목에는 모든 RML 도구를 숙지하는 간단한 연습이 포함되어 있습니다. 도움말 파일을 열려면 시작을 선택하고, 모든 프로그램을 가리키고, SQL Server용 RML 유틸리티를 가리키고, 도움말을 가리킨 다음, RML 도움말을 선택합니다.
SQL Server용 RML 유틸리티의 도구
SQL Server용 RML 유틸리티에는 다음 도구가 포함되어 있습니다.
- ReadTrace
- 보고자
- OStress
- OStress ORCA(Replay Control Agent)
모든 도구 및 샘플 사용에 대한 전체 설명은 SQL Server용 RML 유틸리티에 포함된 RML 도움말 파일을 참조하세요.
SQL Server용 RML 유틸리티에 대한 종속성
Important
RML 도구 모음의 일부로 제공되는 애플리케이션에는 몇 가지 추가 컨트롤을 사용할 수 있어야 합니다.
Reporter에 대한 종속성
보고서 뷰어 컨트롤이 Reporter.exe 같은 폴더 또는 GAC(전역 어셈블리 캐시)에서 사용할 수 있는지 확인해야 합니다. Reporter.exe 필요한 DLL은 다음과 같습니다.
- Microsoft.ReportViewer.Common.dll
- Microsoft.ReportViewer.DataVisualization.dll
- Microsoft.ReportViewer.ProcessingObjectModel.dll
- Microsoft.ReportViewer.WinForms.dll
최신 버전의 RML 유틸리티는 애플리케이션 폴더에 이러한 DLL을 포함합니다.
사용할 수 없는 경우 다음 PowerShell 스크립트를 사용하여 이러한 DLL을 다운로드할 수 있습니다.
Register-PackageSource -Name MyNuGet -Location https://www.nuget.org/api/v2 -ProviderName NuGet Get-PackageSource Find-Package Microsoft.ReportViewer.Common -AllVersions Install-Package Microsoft.ReportViewer.Common -RequiredVersion 10.0.40219.1 Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.Common.10.0.40219.1\lib\Microsoft.ReportViewer.Common.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils" Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.Common.10.0.40219.1\lib\Microsoft.ReportViewer.DataVisualization.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils" Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.Common.10.0.40219.1\lib\Microsoft.ReportViewer.ProcessingObjectModel.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils" Find-Package Microsoft.ReportViewer.WinForms -AllVersions Install-Package Microsoft.ReportViewer.WinForms -RequiredVersion 10.0.40219.1 Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.WinForms.10.0.40219.1\lib\Microsoft.ReportViewer.WinForms.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils"
ReadTrace 보고서 내의 링크가 제대로 작동할 수 있도록 ReporterViewer 수정 사항을 다운로드하고 설치해야 합니다. ReporterViewer 수정 사항을 다운로드하려면 Microsoft Visual Studio 2010 서비스 팩 1 보고서 뷰어(KB2549864)로 이동합니다.
Expander에 대한 종속성
압축 및 압축 해제 컨트롤이 Expander.exe 같은 폴더 또는 GAC에서 사용할 수 있는지 확인합니다. Expander.exe 필요한 DLL은 다음과 같습니다.
- BRICOLSOFTZipx64.dll
- UnRar64.dll
- XceedZipX64.dll
공급업체의 해당 소프트웨어 패키지에서 이러한 DLL을 가져올 수 있습니다.
https://www.rarlab.com/rar_add.htm- Windows 소프트웨어 개발자를 위한 UnRAR.dll 동적 라이브러리 찾기
ReadTrace 및 Ostress에 대한 종속성
ReadTrace 및 Ostress는 SQL Server Native Client의 일부로 제공된 ODBC 및 OLEDB 드라이버를 사용합니다. 버전 09.04.0103부터 RML 유틸리티 제품군은 SNAC(SQL Server Native Client)에만 종속되지 않습니다. 설치된 시스템에서 Microsoft ODBC 또는 OLEDB 드라이버를 사용할 수 있습니다.
확장 이벤트 파일(*.xel)을 분석하려는 경우 Visual C++ 2010 재배포 가능 패키지가 시스템에 설치되어 있는지 확인합니다.
알려진 문제 및 수정 사항
문제 | 해결 방법 |
---|---|
ReadTrace에서 "지정된 서버에 연결할 수 없습니다. 초기 HRESULT: SQL Server가 설치되지 않았거나 SQL Server 2022만 설치된 컴퓨터에서 "0x80040154" | 버전 09.04.0103에서 수정되었습니다. 해결 방법으로 SQL Server Native Client 또는 다른 버전의 SQL Server를 설치할 수 있습니다. HRESULT 0x80040154 REGDB_E_CLASSNOTREG 클래스가 등록되지 않은 것은 COM 구성 요소가 설치되지 않았기 때문에 등록되지 않음을 의미하는 헤더 파일 winerror.h 입니다. SQL Server 2022는 SQL Server Native Client를 배송하지 않기 때문에 발생합니다. |
ReadTrace에서 "오류: 이벤트 런타임 검사: 이벤트 시퀀스 209494 이벤트 [sp_cache_remove]에서 누락된 열 [cached_text]이 검색됨"이 발생합니다. | 버전 09.04.0102에서 수정되었습니다. 해결 방법으로 ReadTrace 명령줄에 추적 플래그(-T28 -T29 )를 추가할 수 있습니다. |
"File 또는 assembly 'Reporter, Version=9.4.10000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 또는 해당 종속성 중 하나를 로드할 수 없습니다. 강력한 이름 유효성 검사에 실패했습니다. (HRESULT에서 예외: 0x8013141A)" | 버전 09.04.0102에서 수정되었습니다. 해결 방법으로 다음 레지스트리 키를 만들어 강력한 이름 확인을 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StrongName\Verification\Reporter,31BF3856AD364E35 재정의할 수 있습니다. |
ReadTrace가 "지정된 서버에 연결할 수 없습니다. 초기 HRESULT: 0x80040154". Ostress가 "연결을 설정하지 못했습니다. SSL 보안 오류입니다.". | SQL Server Native Client 설치에 대한 지침을 참조하세요. |
ReadTrace "처리되지 않은 예외: System.IO.FileNotFoundException: 파일 또는 어셈블리 'Microsoft.SqlServer.XEvent.Linq.dll' 또는 해당 종속성 중 하나를 로드할 수 없습니다. 지정한 모듈을 찾을 수 없습니다." | Visual C++ 2010 재배포 가능 패키지 설치 |
예제
다음 예제에서는 RML 도구 중 일부를 사용하는 방법을 보여 줍니다.
ReadTrace.exe 사용하여 데이터베이스에서 Xevent 데이터 가져오기
ReadTrace.exe 사용하여 PSSDIAG/SQLDiag.exe 또는 SQL LogScout과 같은 도구를 사용하여 수집되는 일련의 Xevent 파일을 가져옵니다. 매개 변수를 -I
사용하여 여러 파일이 있는 경우 제 시간에 수집된 첫 번째 .xel 파일을 가리킵니다. 모든 명령줄 스위치의 경우 다음을 사용합니다 ReadTrace.exe /?
.
ReadTrace.exe -Iserver_instance_20220211T1319480819_xevent_LogScout_target_0_132890707717540000.xel -oc:\temp\output -f -dPerfAnalysisDb -S.
Ostress.exe 사용하여 쿼리 스트레스 테스트
OStress를 사용하여 30개의 동시 연결을 실행하고 각 연결에서 쿼리를 10번 실행하여 SQL Server를 실행하는 서버에 대해 쿼리를 제출합니다. 모든 명령줄 스위치의 경우 다음을 사용합니다 Ostress.exe /?
.
ostress.exe -E -dmaster -Q"select name from sys.databases" -n30 -r10
타사 연락처 고지
이 문서에 포함된 타사의 연락처 정보는 이 항목에 대한 추가 정보를 찾는 데 도움을 주기 위한 것입니다. 이 연락처 정보는 공지 없이 변경될 수 있습니다. Microsoft는 타사 연락처 정보의 정확성을 보증하지 않습니다.