• /
  • EnglishEspañolFrançais日本語한국어Português
  • 로그인지금 시작하기

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

Windows 자체 호스팅의 MSSQL용 NRDOT 설치 및 구성: SQL 인증

|View as Markdown (English)

SQL Server 인증을 사용하여 물리적 서버, 가상 머신 및 독립 실행형 Windows 설치를 포함한 Windows 자체 호스팅 환경에서 NRDOT Collector를 사용하여 Microsoft SQL Server 모니터링을 설정하십시오. Windows RDS 환경에서 모니터하려면 Windows RDS 계측을 참조하십시오.

가이드 설치

대신 뉴렐릭 UI를 통해 설치하려면 one.newrelic.com > Integrations & Agents > Microsoft SQL Server (Database 360) (으)로 이동하십시오. 화면의 지시에 따라 통합을 설정하십시오. 이 페이지에서는 수동 설치만 다룹니다.

이 페이지에서는 SQL Server 인증을 다룹니다. 사용 중인 환경에서 다른 인증 방법을 사용하는 경우 Windows 도메인 인증 또는 gMSA를 참조하십시오.

전제 조건

NRDOT로 Microsoft SQL Server를 모니터링하기 전에 환경이 다음 요구 사항을 충족하는지 확인하십시오:

  • 유효한 라이선스 키가 있는 뉴렐릭 계정.

  • 해당 리전의 뉴렐릭 OTLP 엔드포인트에 대한 네트워크 연결.

  • SQL Server 요구 사항:

    • SQL Server 2017 이상.
    • SQL Server에 대한 관리자 액세스 권한(sysadmin 역할 또는 동등한 권한).
    • 포트 1433 또는 사용자 지정 포트에서 수집기와 SQL Server 간의 네트워크 연결.
    • SQL Server Management Studio(SSMS) 또는 sqlcmd 유틸리티.
    • Windows 도메인 또는 SQL Server 인증.

NRDOT Collector설치하세요

PowerShell을 사용하여 NRDOT Collector를 다운로드하고 설치합니다:

[Net.ServicePointManager]::SecurityProtocol = 'tls12, tls'
$NRDOT_VERSION = (Invoke-RestMethod -Uri "https://api.github.com/repos/newrelic/nrdot-collector-releases/releases/latest").tag_name
$WebClient = New-Object System.Net.WebClient
$WebClient.Headers.Add("User-Agent", "Mozilla/5.0")
$WebClient.DownloadFile("https://github.com/newrelic/nrdot-collector-releases/releases/download/$NRDOT_VERSION/nrdot-collector_${NRDOT_VERSION}_windows_x64.msi", "$env:TEMP\nrdot-collector.msi")
Start-Process msiexec.exe -ArgumentList "/i `"$env:TEMP\nrdot-collector.msi`" /qn /norestart /L*V `"$env:TEMP\nrdot_install.log`"" -Wait
Get-Service nrdot-collector -ErrorAction SilentlyContinue

모니터링 사용자 생성

이 스크립트를 루트 user/sysadmin 사용자로 실행하여 newrelic 모니터링 사용자를 생성하고 SQL Server 메트릭을 수집하는 데 필요한 권한을 부여하십시오.

SQL Server Management Studio(SSMS)에서 다음 스크립트를 실행하여 newrelic 모니터링 사용자를 생성하십시오. <YOUR_PASSWORD>을(를) 원하는 비밀번호로 교체하십시오:

USE [master];
GO
CREATE LOGIN [newrelic] WITH PASSWORD = '<YOUR_PASSWORD>';
GO
GRANT VIEW SERVER STATE TO [newrelic];
GRANT VIEW ANY DEFINITION TO [newrelic];
GRANT VIEW ANY DATABASE TO [newrelic];
GO
DECLARE @name SYSNAME;
DECLARE db_cursor CURSOR READ_ONLY FORWARD_ONLY FOR
SELECT [name]
FROM [master].[sys].[databases]
WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution')
AND [state] = 0;
OPEN db_cursor;
FETCH NEXT FROM db_cursor INTO @name;
WHILE @@FETCH_STATUS = 0
BEGIN
BEGIN TRY
EXEC('USE [' + @name + '];
IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = ''newrelic'')
BEGIN
CREATE USER [newrelic] FOR LOGIN [newrelic];
END;
GRANT VIEW DATABASE STATE TO [newrelic];');
END TRY
BEGIN CATCH
PRINT 'Error on ' + @name + ': ' + ERROR_MESSAGE();
END CATCH
FETCH NEXT FROM db_cursor INTO @name;
END
CLOSE db_cursor;
DEALLOCATE db_cursor;
GO

팁

데이터베이스 자격 증명과 같은 민감한 정보를 안전하게 관리하려면 시크릿 관리 도구에 저장하십시오.

NRDOT Collector구성

  1. 관리자 권한으로 PowerShell에서 mssql-config.yaml (으)로 명명된 설정 파일을 생성하십시오:
New-Item -Path "C:\Program Files\nrdot-collector\mssql-config.yaml" -ItemType File
  1. 다음 설정에 환경별 값을 추가하고 이전 단계에서 생성한 mssql-config.yaml 파일에 복사하십시오:

전체 설정

이 설정은 SQL Server 환경을 위한 필수 데이터베이스 모니터링에 중점을 둡니다. 사용 가능한 모든 메트릭을 포함한 포괄적인 모니터링을 활성화하려면 설정 참조를 확인해 주십시오.

mssql-config.yaml
1
receivers:
2
nrsqlserver:
3
collection_interval: 15s
4
username: newrelic
5
password: YOUR_PASSWORD
6
server: sqlserver.example.com
7
port: 1433
8
9
# Enable comprehensive database metrics
10
metrics:
11
sqlserver.database.count:
12
enabled: true
13
sqlserver.database.io:
14
enabled: true
15
sqlserver.database.latency:
16
enabled: true
17
sqlserver.database.operations:
18
enabled: true
19
sqlserver.database.tempdb.space:
20
enabled: true
21
sqlserver.database.tempdb.version_store.size:
22
enabled: true
23
sqlserver.deadlock.rate:
24
enabled: true
25
sqlserver.os.wait.duration:
26
enabled: true
27
sqlserver.processes.blocked:
28
enabled: true
29
sqlserver.memory.grants.pending.count:
30
enabled: true
31
sqlserver.database.file.size:
32
enabled: true
33
sqlserver.memory.area:
34
enabled: true
35
36
# Enable query sample, top query, query plan, and top procedure log collection
37
events:
38
db.server.query_sample:
39
enabled: true
40
db.server.top_query:
41
enabled: true
42
db.server.query_plan:
43
enabled: true
44
db.server.top_procedure:
45
enabled: true
46
47
# Top query collection configuration
48
top_query_collection:
49
lookback_time: 60s
50
max_query_sample_count: 1000
51
top_query_count: 250
52
collection_interval: 60s
53
collect_full_query_text: true
54
allowed_comment_keys:
55
- nr_service_guid
56
57
# Query sample collection configuration
58
query_sample_collection:
59
max_rows_per_query: 100
60
collect_full_query_text: true
61
allowed_comment_keys:
62
- nr_service_guid
63
64
# Top stored procedure collection configuration
65
top_procedure_collection:
66
max_procedure_sample_count: 1000
67
top_procedure_count: 250
68
collection_interval: 60s
69
70
resource_attributes:
71
db.system.version:
72
enabled: true
73
sqlserver.db.edition:
74
enabled: true
75
76
processors:
77
memory_limiter:
78
check_interval: ${env:NR_MEM_LIMITER_CHECK_INTERVAL:-1s}
79
limit_mib: ${env:NR_MEM_LIMITER_LIMIT_MIB:-200}
80
spike_limit_mib: ${env:NR_MEM_LIMITER_SPIKE_MIB:-50}
81
82
exporters:
83
otlp:
84
endpoint: https://otlp.nr-data.net:4318
85
headers:
86
api-key: YOUR_LICENSE_KEY
87
tls:
88
insecure: false
89
compression: gzip
90
91
sending_queue:
92
enabled: true
93
sizer: bytes
94
queue_size: 100_000_000
95
num_consumers: 10
96
batch:
97
sizer: bytes
98
max_size: 1_000_000
99
min_size: 0
100
flush_timeout: 5s
101
102
service:
103
telemetry:
104
metrics:
105
level: none
106
107
pipelines:
108
metrics:
109
receivers: [nrsqlserver]
110
processors: [memory_limiter]
111
exporters: [otlp]
112
113
logs:
114
receivers: [nrsqlserver]
115
processors: [memory_limiter]
116
exporters: [otlp]

팁

  • logs 파이프라인은 수집기 디버그 또는 내부 에이전트 로그를 전달하지 않습니다. 이는 쿼리 텍스트, 실행 계획 및 샘플 데이터를 포함한 SQL Server 쿼리 텔레메트리를 전송합니다. nrsqlserver 수신기는 OpenTelemetry 로그 레코드로 발생하는 db.server.query_sample, db.server.top_query, db.server.query_plan 및 db.server.top_procedure 이벤트를 통해 이 텔레메트리를 캡처합니다.

  • db.server.top_procedure 이벤트에는 sys.dm_exec_procedure_stats.total_spills에 대한 지원이 도입된 SQL Server 2017 CU3 이상이 필요합니다. 이전 버전에서는 이 이벤트가 데이터를 내보내지 않고 오류를 로그에 기록합니다. 다른 이벤트는 영향을 받지 않습니다. sys.dm_exec_procedure_stats에 액세스하려면 VIEW SERVER STATE (또는 SQL Server 버전에 따라 VIEW SERVER PERFORMANCE STATE)이(가) 필요합니다. 또한 모든 사용자 데이터베이스에서 OBJECT_NAME 및 OBJECT_SCHEMA_NAME이(가) 올바르게 확인되려면 VIEW ANY DEFINITION이(가) 필요하며, 초기 세션을 설정하려면 CONNECT SQL이(가) 필요합니다. 모니터링 사용자 생성에서 생성된 모니터링 사용자는 3가지 권한을 모두 포함합니다.

Windows 서비스 레지스트리 업데이트

  1. 다음 방법 중 하나를 사용하여 새 mssql-config.yaml 파일을 사용하도록 Windows 서비스 레지스트리를 업데이트하십시오:

    • PowerShell의 경우: 다음 명령을 관리자 권한으로 실행하십시오:

      Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\nrdot-collector" -Name "ImagePath" -Value '"C:\Program Files\nrdot-collector\nrdot-collector.exe" --config "C:\Program Files\nrdot-collector\mssql-config.yaml"'
    • 명령 프롬프트의 경우: PowerShell을 사용할 수 없는 경우 명령 프롬프트를 대신 사용하고 다음 명령을 관리자로 실행하십시오:

      bash
      $
      sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""
  2. NRDOT Collector 설정의 유효성을 검사하여 형식이 올바르고 제대로 작동하는지 확인합니다.

    bash
    $
    & "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"

    팁

    애플리케이션 성능을 데이터베이스 작업과 연관시키려면 데이터베이스 서비스 식별을 설정할 수 있습니다. 자세한 내용은 데이터베이스 서비스 식별 설정을 참조하십시오.

NRDOT Collector를 다시 시작하십시오

설정을 업데이트한 후 NRDOT Collector 서비스를 다시 시작하십시오:

bash
$
net stop nrdot-collector
$
net start nrdot-collector

팁

새로운 설정이 적용되도록 설정 변경 후에는 항상 NRDOT Collector 서비스를 다시 시작하십시오.

데이터 찾기 및 사용

데이터가 수집되면 뉴렐릭 UI를 통해 포괄적인 SQL Server 데이터베이스 모니터링에 액세스할 수 있습니다.

뉴렐릭에서 SQL Server 데이터베이스를 찾으려면 다음을 수행하세요.

  1. https://one.newrelic.com > All Capabilities > Databases 으)로 이동합니다.

  2. Entity type 드롭다운 메뉴에서 MSSQL instance을(를) 선택한 다음 Apply을(를) 클릭합니다.

  3. 모임 목록에서 SQL Server 데이터베이스를 선택합니다.

    NRDOT로 SQL Server 모니터링을 설정한 후 다음을 수행할 수 있습니다:

APM-데이터베이스 상관관계 설정

뉴렐릭에서 애플리케이션 성능을 데이터베이스 작업과 연관시키는 방법을 알아보십시오.

문제점 해결

뉴렐릭에서 MSSQL Windows 모니터링 설정 문제를 해결하는 방법을 알아보십시오.

지표 참조

NRDOT Collector가 수집하는 사용 가능한 메트릭에 대해 알아보십시오.

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.