DMV sys.dm_os_performance_counters를 쿼리 할 때 제로 행이 반환 됨


9

서버 뷰 상태 권한 을 SQL Server 2014 Standard Edition (RTM)가진 사용자가 SYSADMIN있지만 DMV를 실행하면 sys.dm_os_performance_counters레코드가 반환되지 않습니다.

권한에 어떤 문제가 있습니까?

여기에 이미지 설명을 입력하십시오

@@ Version 출력 :

Microsoft SQL Server 2014-12.0.2000.8 (X64) 2014 년 2 월 20 일 20:04:26 저작권 (c) Windows NT 6.3 (빌드 9600 :)의 Microsoft Corporation Standard Edition (64 비트) (하이퍼 바이저)


설치 중에 레지스트리 카운터가 설치되지 않았을 가능성이 있습니다. 사용자에게 sysadmin권한 이 있으면 view server statesysadmin 역할에 포함 된 DMV를 실행할 권한이 필요하지 않습니다 . 위의 관점에서 행이 리턴되지 않으면 perfmon 카운터가 설치되지 않았 음을 의미합니다.
Shanky

@Shanky 항상 그런 것은 아니지만 두 가지 더 가능한 이유가 있습니다. 개인적으로 레지스트리 이유가 있습니다 (설치 중 레지스트리 변경이 제대로 수행되지 않는 강화 된 보안 환경에서)
Reaces

답변:


4

문제의 사용자가 있다고 확신하는 경우 View Server State(그리고 스크린 샷과 같이 보입니다).

그런 다음 이전 에 msdn 블로그넣은 여러 가지 이유가 있습니다. 에 이르기까지:

  1. SQL Server 설치 중 성능 개체 및 카운터 설정에 실패했습니다.
  2. 64 비트와 32 비트 플랫폼의 혼합
  3. 레지스트리 권한이 왜곡되었습니다

이 문제를 해결하기 위해 다른 스택 교환 게시물에 성능 카운터를 다시 설치하기위한 지침에 설명 된 것과 동일한 단계를 사용할 수 있습니다 .

관리자 권한 명령 프롬프트를 사용하여 다음 단계를 수행하십시오.

  1. BINN정정하려는 SQL Server 인스턴스 의 디렉토리 경로를 변경 하십시오.
    (예 : C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\Binn)
  2. 실행 unlodctr <<REGISTERED SERVER NAME>>
    예 : unlodctr MSSQL$SQL2008또는 SQLAgent$SQL2008...
  3. 실행 lodctr /T:<<perf-sql* matching the counters you desire to load>>
    예 : perf-MSSQL$SQL2008sqlctr.ini또는 perf-SQLAgent$SQL2008sqlagtctr.iniSQLAgent 는 /TA와는 SQL 서버 성능 카운터 공급자를로드하는 것이 중요하다 신뢰할 수있는 업체 .
  4. 주기 원격 레지스트리 서비스 :
    net stop "Remote Registry"다음net start "Remote Registry"
  5. winmgmt /resyncperfctr "<<PID>>"
    PID가 프로세스 ID 인 프로세스 ID를 사용하여 WMI 동기화를 강제 실행 합니다 WinPriv.exe(작업 관리자에서 얻을 수 있음).

다음이 필요할 수도 있습니다.

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009
    레지스트리 키에 올바른 보안 권한이 부여되었는지 확인하십시오 .

    1. 제작자 계정에 모든 권한을 부여합니다.
    2. 관리자 계정에 모든 권한을 부여하십시오.
    3. 해당 상자 / 노드의 SQL 관리자에게 읽기 권한을 부여하십시오.
    4. 시스템 계정에 모든 권한 부여

이 방법은 SQL Server 2008의 경우 2014와 동일합니까?
AA.SC

@ AA.SC 예,이 방법은 AFAIK를 변경하지 않았습니다.
Reaces

@@ Reaces 클라이언트는 시스템 RTM을 SP1로 업데이트하여 문제를 해결했습니다.
AA.SC
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.