サーバーのビューステート権限を持つSYSADMIN
ロールを持つSQL Server 2014 Standard Edition (RTM)
のユーザーがいますが、DMVを実行するとsys.dm_os_performance_counters
レコードを返しません。
アクセス許可の何が問題になっていますか?
@@ Versionの出力:
Microsoft SQL Server 2014-12.0.2000.8(X64)Feb 20 2014 20:04:26 Copyright(c)Microsoft Corporation Standard Edition(64-bit)on Windows NT 6.3(Build 9600:)(Hypervisor)
問題のユーザーがView Server State
を持っていると確信している場合(スクリーンショットのように見えます)。
次に、以前にいくつかの理由があります msdnブログに入力してください 範囲:
これを解決するには、別のスタック交換ポストで パフォーマンスカウンターを再インストールするためのガイドライン で概説されているのと同じ手順を使用できます。
管理者特権のコマンドプロンプトを使用して、次の手順を実行します。
BINN
ディレクトリへのパスを変更します。C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\Binn
)unlodctr <<REGISTERED SERVER NAME>>
unlodctr MSSQL$SQL2008
またはSQLAgent$SQL2008
...lodctr /T:<<perf-sql* matching the counters you desire to load>>
perf-MSSQL$SQL2008sqlctr.ini
またはperf-SQLAgent$SQL2008sqlagtctr.ini
。 /T
は、SQL Serverパフォーマンスカウンタープロバイダーを信頼できるプロバイダーとしてロードするために重要です。net stop "Remote Registry"
、次にnet start "Remote Registry"
winmgmt /resyncperfctr "<<PID>>"
を使用してWMI同期を強制するWinPriv.exe
のプロセスIDです(これはタスクマネージャから取得できます)以下も必要になる場合があります。
正しいセキュリティ権限がHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009
に付与されていることを確認してください
レジストリキー: