SQL Server Management Studioが新しいウィンドウをゆっくり開く


29

SQL ServerとManagement Studioの両方を2008から2012にアップグレードした後、新しいクエリウィンドウとダイアログボックスを開くとManagement Studio 2012が非常に遅くなります。

テーブルを右クリックしても遅くなります。通常、ウィンドウ内で何かを始める前に、少なくとも5秒の遅延があります。同じウィンドウを連続して2回開いても、これは毎回発生します。なぜこれが起こり、どうすれば修正できますか?

他のアプリケーションは、データベースへの接続を非常に高速に確立します。

私が試したものは助けにはなりませんでした:

  • hostsファイルを変更する必要があるGoogleでのヒット
  • SSMS「ユーザー定義設定」のリセット
  • ビデオドライバの更新、ハードウェアアクセラレーションの無効化、DirectXの無効化
  • 生体認証サービスを無効にします(インストールしていません)。

私のコンピューターは十分に高速でなければならず、16GBのRAMもあります。私のハードウェアは間違いなく問題ではないはずです。SSMSが何かを待っているようです-これが起こっている間、私は他のプログラムをスムーズに操作できます。

SQL Server 2012 CU1更新プログラムをインストールする機会はありません。修正プログラムのインストールでエラーが発生するリスクがあるようで、現時点ではリスクを負うことができません。


この振る舞いは見当たりません。その後、さらに調査するために、(1)プロセスモニターを使用して、プロセスが何をしているかを確認し、それが何か手掛かりを与えるかどうかを確認します。(2)SQL Server Profilerを使用して、SSMSから送信されたクエリのいずれかが高い期間(ブロッキングなど)を持っているかどうかを確認します。(3)SSMSプロセスにデバッガーを接続し、呼び出しスタックは何でも明らかにしました。
マーティンスミス

回答:


11

SQL Server Management Studioの起動

MicrosoftのSQL Server Management Studio(SSMS)が起動すると、Microsoftの証明書失効リスト(CRL)への接続を試みます。

http://crl.microsoft.com/pki/crl/products/MicrosoftRootAuthority.crl

SSMSの基礎となる.NETコンポーネントは、証明書失効リストに接続しようとしていますが、SSMSはそうすることができません。これにより、ロード手順全体が遅くなります。(明らかに証明書ごとに15秒)

わかりましたので、ここで何が起こっていますか。SSMSにはマネージコードの割合が高く、このコードはすべて出荷時に署名されています。起動時に(この設定がチェックされている場合).Net Runtimeはcrl.microsoft.comに連絡して証明書が有効であることを確認しようとします(しばらく前にMicrosoftの名前で発行された偽の証明書があったため、これは非常に有効な懸念事項です) 。インターネット接続がない場合、または証明書失効リストサーバーへの接続に問題がある場合、SSMSの起動が遅れます。

参照:FAQ、SSMSの起動に45秒かかるのはなぜですか?(MSDNブログ)

この問題を引き起こす可能性のある問題の1つは、サーバーがインターネットにアクセスできない場合、.NETフレームワークがcrl.microsoft.com Webサイトにアクセスして、管理対象アプリケーションのバイナリの署名に使用されるデジタル署名を確認できないことです。有効です。.NETランタイム実装では、各証明書チェックには15秒のタイムアウトがあります。インストールされている機能によっては、Management Studioの起動時間が最大で1分間になる場合があります。

参照:SQL Server Management Studioの起動時間(MSDNブログ)

解決策

証明書を直接ダウンロードしてブラウザにリンクを入力し、証明書を証明書データベースにインポートすることにより、問題の一部を回避できます。

  • または-

(会社の)ファイアウォールを再構成して、MicrosoftのCRLへの接続を許可できます。

  • または-

Microsoft CRLへの接続を許可するように個人用ウイルス対策/ファイアウォールを再構成できます

  • または-

(会社の)ファイアウォールを設定して、MicrosoftのCRLにアクセスするリクエストのタイムアウトをより速くクライアントに送信できます。

  • または-

詳細設定で「発行者の証明書失効を確認」しないようにIEを構成できます。

(詳細については、上記のブログ1および2を参照してください)


7

サーバー名「./」に接続するとき、私はあなたと同じ経験をします。運が悪いと、サーバー名「(ローカル)」に接続したときにパフォーマンスの問題が発生しないことがわかりました。SSMS 2012が「./」を介してサーバーを解決する方法に問題がある可能性があります。

編集:ADO.NET接続で./を使用してスローネスを再現できるため、SSMSに関連するとは思わない。


6

SSMSが、正しく処理できない設定(一部のサーバーへの接続やアドインの設定など)をインポートしたことが発生した可能性があります。

SSMSのユーザー定義の設定を「リセット」する残忍な方法があります。

SSMSを閉じて、フォルダーに移動します。

C:\Users\YOURWINLOGINNAME\AppData\Roaming\Microsoft\SQL Server Management Studio\

サブフォルダー「11.0」があります。名前を「11.0_」に変更すると、いつでも元に戻すことができます。ここでSSMSを起動します。クリーンな設定が再作成され、問題が解決する可能性があります。そうでない場合-新しく生成された「11.0」を削除し、「11.0_」の名前を「11.0」に戻します。

これは、アップグレード後に破損したアドインの動作である可能性もあります。アドインは、一部のコマンドまたはイベントのハンドラーとして自身を登録し、例外が見つからない/スローされるとシステムが不安定になる場合があります。

実際、v2012はアドインを登録するために別のメカニズムを使用しますが、一部のアドインはすべてのインスタンスに自身をインストールします。確認するには、次のレジストリキーを調べます。

[HKEY_CURRENT_USER\Software\Microsoft\SQL Server Management Studio\11.0_Config\AutomationOptions\LookInFolder]

そこにフォルダリストがあります。これらのすべてのフォルダーを確認します-それらは空でなければなりません(つまり、アドインがありません)。



3

私は個人的にこの問題を経験していませんが、多くの人が持っている長いスレッド(ここ)があります。一般的なアドバイスは、次のいずれかの方法でビデオドライバーを操作することに関連するようです。

  1. 更新されたビデオドライバーのインストール-OR-
  2. ハードウェアの加速を減らすまたはオフにする-OR-
  3. DirectXサポートをオフにする

スレッドからもこの答えがありました... 「Windows 7のクリーンブート手順により、バイオメトリック認証サービス(DigitalPersona DPHostw.exe)サービスが問題であることが判明しました。サービスを無効にすると問題が修正されました。」

私が見つけたスレッドはSSMSの古いバージョン、すなわち2005、2008などに関連しているので、これらのアプローチのいずれかがあなたの場合にも機能するかどうかを知りたいと思います...


3

問題は、サーバーへの新しい接続を開くのに5秒かかることだと思います。なぜそうなのか私にはわからず、分析と診断にはワイヤトレースが必要です。試行されているプロトコルと、最終的に成功するプロトコルを調査する必要があります。クライアントが名前付きパイプを最初に試行し(SMBに依存)、次にTCPにフォールバックする可能性があります(ただし、このような場合の通常の遅延ははるかに長く、約20〜30秒です)。

クライアントネットワーク構成でクライアントプロトコルの順序を確認することをお勧めします。で独自のエントリを見つけて、クライアントが使用しているプロトコルを確認しますsys.dm_exec_connections


3

同じ問題があり、Trend Micro Officeスキャンが問題の原因であることがわかりました。

私はこの問題について他のいくつかの同様のスレッドで説明されているすべてを無駄に試しました。AVソフトウェアを無効にしようと思いました。TrendMicro Officeスキャンがオフになると、SSMSは高速になります。

これはWindows 7では発生しませんでした。


3

私も、テーブルを右クリックしてコンテキストメニューを表示すると、5〜10秒の遅延が発生していました。ただし、ローカルデータベースのみを使用しているため、私の状況は一部の状況と少し異なる場合があります。私の解決策:

ウイルス対策の無効化に関するイランからの回答を読んだ後、この問題を克服するためにウイルス対策を完全に無効にしたくないので、その概念をさらに一歩進めました。

既定のデータベースの場所を変更し、そのディレクトリをウイルス対策から除外することで、遅延を大幅に削減しました(現在は最大1秒です)(私の場合、Microsoft System Center Endpoint Protection 2015を使用しています)。

デフォルトのデータベースの場所を変更するには、詳細について次の記事を参照してください。 http://thomaslarock.com/2015/02/changing-default-database-file-locations-in-sql-server/


3

私は私が使用SSMS 2016年と同じ問題だったprocmonのをそれがなかった最後のものは、いくつかの秒の遅延がマイクロソフトのIPアドレスへのネットワーク接続を行う前にしたことを識別するために。その後、レジストリキーのHKEY_CURRENT_USER\SOFTWARE\Microsoft\Microsoft SQL Server\130CustomerFeedbackを1から0に設定してカスタマーエクスペリエンスプログラムをオフにしようとしました。SSMSを再起動した後、再び高速に動作します。おそらくそれは常に新しいクエリウィンドウを遅くするわけではありませんが、私にとってはそうでした。

それがあなたのSSMS 2012で起こっていたかどうかはわかりませんが、おそらく試してみる価値があります。レジストリキーはおそらくの110代わりになり130ます。


2

SSMS 2016およびレジストリの変更について。私の道は

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\130\Tools\Setup\UserFeedbackOptIn  

1から0に変更すると、SSMSが再び高速になりました。


2

キャッシュされた多数のクエリウィンドウを閉じるだけで、この問題を解決できる場合があります。

SSMSのインスタンスには、保存されたキャッシュ(SSMSを開くたびに開く)に約15個のクエリがありました。これらのウィンドウをすべて閉じてSSMSを再起動すると、問題はすぐに消えました。


2

私はssms v17.0を持っていますが、右クリックのコンテキストメニューが遅いという問題もありました。

コンピューターの名前にはダッシュが付いていて、コンピューターの名前を単純なものに変更し、修正しました。

私はssmsをアンインストールし、sqlサーバーをアンインストールし、コンピューターを「xja-13-asdfa3」ではなく「MyBox」のような単純な名前に変更しました。次に、SQLサーバーを再インストールし、次にssmsを再インストールしました。これにより、テーブルを右クリックしたときのすべてのスローコンテキストメニューの問題が修正されました。どこかでDNSの問題が発生し、待機はdnsタイムアウトの待機に関連していたと思います。

16ギガバイトのRAM、ssdドライブ、工場出荷時のデフォルトのランダムなPC名を持つ3GHz CPUを搭載したラップトップがありました。


1

私のコンピューターでは速いです。

SQL Server 2012のSSMSは、Visual Studio 2010シェルを使用するようになりました。これは、SQL Server 2008のSSMSで使用されるシェルよりもリソースを消費します。コンピューターをアップグレードするか、SQL Server 2008 R2からSSMSを使用することをお勧めします。古いバージョンでほとんどのタスクを実行できるはずです。

また、クライアントツールも更新されるため、最新の累積的な更新プログラムのインストールを試みることもできます。SQL Server 2012の最新バージョンは現在CU1です。

http://support.microsoft.com/kb/2679368/



0

私にとっては、SSMを非常に遅くしたのはBitDefenderファイアウォールでした。どうやら、データベースリストにアクセスするための何らかのファイアウォールブロッキング


-1

一つは、「データベースのプロパティの状態を確認する必要があります自動的に閉じます」を「Automatically」グループに。

trueの場合、各クエリの後、接続は閉じられ、新しいクエリごとに再度開かれます。それは確かにあなたの仕事をssmsで遅くします。デフォルトはfalseです。



-2

管理者権限(右クリックして管理者として実行)を使用してSSMSを起動すると、正常に動作します。そうでない場合、新しいクエリウィンドウに時間がかかります


-3

この原因はほとんどの場合、ネットワークドライブの欠落です。たとえば、ラップトップへのドライブマッピングはあるが、ラップトップの電源が切れている場合です。

残念ながら、ラップトップの電源を入れる(ドライブが再接続される)か、Windowsエクスプローラーでドライブを切断する(ただし、後で再接続する必要がある)ことです。

詳細についてはこちらをご覧ください:http : //social.msdn.microsoft.com/Forums/en-US/sqltools/thread/64c13a84-3e62-4b0c-a1ce-65fcc78d6787


1
この問題はSSMS 2012に固有のものです-2010年2月のmsdnスレッドが関連するとは思えません。
JNK
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.