SSMS接続ダイアログにリストされるサーバーの順序を制御するにはどうすればよいですか?


11

私の現在のプロジェクトでは、SQL 2008-> 2012からアップグレードし、ハードウェアのタスクをやり直して、繰り返し、データベースのシャッフルを行います。

マイナーな問題の1つは、SSMSの接続ダイアログがサーバーの順序を入れ替えて最新のものを最優先することです。特定の日に6〜10台のDBサーバーに接続していて、リストから特定のサーバーをすばやく見つけたいと考えると、この動作はヘルプよりもはるかに邪魔になります。

この動作を無効にして、サーバーをアルファベット順に、または追加された順序で、またはサーバーに接続するたびに変更されないものがあるようにする方法はありますか?

それを除いて、それらのリスト/ファームから特定のサーバーへの接続をよりよく管理するための完全に異なる方法はありますか?

SQL 2012にSSMSを使用しています(2008ソリューションにも興味があります)。

回答:


6

登録済みサーバーを使用するか、中央管理サーバー(CMS)をセットアップします。わずかな時間でインフラストラクチャをセットアップできる場合は、後者だけをお勧めします。これにより、あなただけではなく、全員が同じサーバーのリストを表示できるようになります(登録済みサーバーはレジストリに保存されます)。CMSの唯一の「欠点」は、パスワードがディスクに保持されないため、Windows認証を使用する必要があることです。

これらの機能により、サーバーの順序付け/グループ化されたリストを維持し、サーバーをグループとして管理できます。ポリシーベースの管理はGUIと緊密に統合されているため、これは非常に強力です。

これはすべてのサーバーバージョンで機能します-私はSSMS 2012を実行し、2005-2012サーバーを管理しています。CMSサーバーはExpressエディションでセットアップできるため、ライセンスは問題になりません。ただし、サーバーリストを回復できるように、システムデータベースのバックアップを取ることをお勧めします。


これまでに遭遇した唯一の欠点は、CMSをそれ自体のグループのメンバーにすることはできないことです(私が間違っている場合は修正してください)。したがって、CMSになるためだけに追加のインスタンスが必要です。どのようにこれを回避し、それを便利にするのですか?...または、どこかに余分なインスタンスを食べていますか?もう1つ、ほとんどの人がリモートで作業し、常にドメインに接続しているわけではありません。ローカルで開発するためにSSMSを起動すると、これはどのように動作しますか、遅延、影響なし?
Nick Craver

@ニック:はい、CMS専用の新しいインスタンスを設定することをお勧めします。これにより、実際のSQLインフラストラクチャから分離されます。それが私が私の回答でライセンスに触れた理由であり、セットアップには少し余分な労力がかかると述べました。
Jon Seigel

@ニック:インフラストラクチャのセットアップについてもっと知る必要があります-何か意味がありません。ホームマシンから運用SQLサーバーに直接接続していませんか(そうではないと思います)。ローカルサーバーを含める必要がある場合は、リストがローカルに保存されるため、その部分には登録済みサーバーを使用します。
Jon Seigel、2012

はい、そうです:)これは私の開発マシンなので、ここからSEインフラストラクチャ内のすべてのSQLサーバーに接続します(ただし、VPNではなくローカル開発を行っている場合もあります...特にラップトップ上)。ライセンスは重要な問題ではありませんが、完全に独立したインスタンス(およびそれをどこに保存するか)は少し不明です...どのサーバーを使用したのかわかりません。私の懸念は、SSMSがCMSに到達できない場合です。SSMSを開いたときに何らかのタイムアウトが発生しますか?
Nick Craver

@Nick:ええ、すべてが仮想化されていれば、はるかに簡単です。:)管理VMを維持します。もう1つのオプションは、Expressの代わりにDeveloperエディションのインスタンスを使用することです。これにより、SQL Agentは、何か問題が発生した場合に通知します。いいえ、SSMSを開くときにタイムアウトはありません。(予想される)[登録済みサーバー]タブでCMSノードを展開しようとしたときにのみ待機します。
Jon Seigel、2012

4

SqlStudio.binにハッキングするか、エントリを削除して、必要な順序で再度追加しない限り、この順序を制御することはできません。回避策は次のとおりです。

これは実際にはMRUリスト(最新の接続が最初にリストされている)であるため、最初の位置にないサーバーに接続するとすぐに順序が乱れることに注意してください。

これらのSOの質問で詳細を確認できます。

そして、削除キーを使用する機能を開始した、私が提出したバグを確認できます。

そしてその結果として発生した他のバグ:


1
+1。SSMSでマウスを上に置いてdelを押すことができることを知りませんでした。それは金の重さの価値があります。
トーマス・ストリンガー

1

私が私のSSMSアドインSSMSBoost(.com)でこの問題を解決している限り、実際には何もハッキングする必要はありません。ダウンロードして無料で使用できます。設定で優先接続のリストを定義するだけで(図を参照)、これはツールバーのドロップダウンとして使用できるため、ネイティブのデータベースリストでデータベースを切り替える場合と同様に、サーバーを切り替える場合でもワンクリックで完了します。落ちる。

今いくつかの写真:

設定ダイアログ: ここに画像の説明を入力してください

他のオプションを見ると、「重要なDBアラート」も見つかります。これは、プロジェクトの作業中に新旧のDB、テスト、および実サーバーを切り替える場合に便利です。「重要な」データベースに接続している限り、画面の指定された位置にBIGツールチップとして表示されるアラートを設定できるため、REALまたはテスト環境で作業していることがわかります。

次の画像は、ツールバーのドロップダウンの内容を示しています。ここには、上記の優先接続と現在のサーバーのすべてのデータベースの下に表示されます(ネイティブデータベースリストのドロップダウンと同じリスト)

ここに画像の説明を入力してください

私が永続的に改善に取り組んでいる限り、あなたの提案を私に書いてもらえます。そうすれば、アドインがさらに良くなります。


Twitterで私をフォローしてくれてありがとう-ただし、名前をロックするためだけにそのアカウントを登録した。とは言っても、専用のTwitterアカウントを作成するブログを設定中です。リリースされたらいつでもフォローできます(詳細についてはこちらからメッセージをお送りします)。ありがとう。
Jon Seigel

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.