web-dev-qa-db-ja.com

クライアントからSQL Serverへの接続を確認する簡単な方法

トラブルシューティングの目的で、SQL Serverに接続できない可能性のあるアプリケーションとは関係なく、クライアントがSQL Serverインスタンスに接続できるかどうかを確認できるようにしたいと思います。

デフォルトのWindowsシステムツールを使用してこれを行う簡単な方法(つまり、サードパーティのソフトウェアをインストールする必要がない)はありますか?おそらくスクリプトまたはネットワークアプリケーションを使用していますか?

20
MicSim

サーバーがTCP/IPを使用している場合、簡単な方法は、SQL ServerポートにTelnetで接続しているかどうかを確認することです。デフォルトでは、これはポート1433なので、これは機能するはずです。

telnet servername 1433

それはおそらくほとんどの場合適切でしょう。

別のポートまたは動的ポート(名前付きインスタンスで一般的)を使用している場合は、現在リッスンしているポートを判別する必要があります。 SQL Server構成マネージャーをチェックして、それが特定のポートか動的ポートかを確認します。動的ポートを使用している場合は、サーバーに複数のインスタンスがない限り、netstat -abnは、おそらくそれが使用しているものを見つける最も簡単な方法です。それ以外の場合は、WindowsイベントログまたはSQL Serverエラーログを調べて、インスタンスで使用されているポートを示すメッセージを探します。

SQL Serverが名前付きパイプを使用している場合、マシン上の共有にアクセスできれば、私は信じるので、十分なネットワーク接続が確立されています。この記事では、さらに進んでIPC $共有への接続を試すことができると説明しています。

http://msdn.Microsoft.com/en-us/library/aa275787%28v=sql.80%29.aspx

Net Use \\servername\IPC$

これはSQL Server 2000用に書かれていますが、この側面が大きく変わったとは思いません。

15
db2

SQL接続の簡単なテスト方法は、ファイル拡張子が「UDL」の空のテキストファイルを作成することです。メモ帳で作成できます。そして、任意の名前を付けることができます。 「TestSQL.UDL」を使用しています

Windows PCのデスクトップに保存し、ダブルクリックします。

[データリンクプロパティ]ダイアログボックスが表示され、SQLサーバーのIPアドレスと、SQLユーザー名とパスワードを入力できます。

「接続のテスト」ボタンをクリックして、接続できるかどうかを確認します。

enter image description here

26
DaveB

Microsoft.SqlServer.Smoローカルマシン上のGACでのアセンブリ。これはPowerShellで簡単に実行できます。

[Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.Smo') | Out-Null

$server = New-Object Microsoft.SqlServer.Management.Smo.Server("YourSqlServerName")

# do a simple operation to see if you can get data
Try {
    $server.Version | Out-Null
    Write-Host "SQL Server connection successful!!!"
}
Catch [System.Exception] {
    Write-Host "Error connecting to SQL Server..."
}
8
Thomas Stringer