【旧】SQLServerのポートの開け方

すべての記事はhttp://metroit.hatenablog.jp/に移動しました。
2019/11/05にはアクセスできなくなります。

こちらに移動

【SQL Server】SQL Serverのポートの開け方

SQLServerをインストールして、リモート端末からアクセスしたかったんだけど、
全くアクセスできなくてめちゃくちゃ困った。

結果、丸一日かけて、やっとやり方が分かったので記しておく。


SQLServerは、まず初めにUDP1434ポートを使って、なんかするみたいだ。
(サーバの有無でも確認するのか?しらんけど)

しかし、その後が違う。

インストール時に、『既定のインスタンス』を選んでインストールしていた場合、
TCP1433ポートを使って接続しに行く。

そうではなく、『名前つきインスタンス』を選んでインストールしていた場合、
SQLServerのサービスが起動された時にランダムでTCPポートが決定されるそうで、
ポートが固定ではない。
40000-50000あたりのポートを許可して、どんどん幅を縮めていったら、どのポートを
使っているのか分かった。
(なんかツール使うとすぐ分かるみたい。SQL Server の名前付きインスタンスのポート解決について

で、SQLServerは難しいことが多いみたいで、どのサイトもごちゃごちゃ言ってて
よく分からなかったから、調べたら以下の結論に至った。

共通でやること
UDP 1434ポートを許可する。
・『SQL Server 構成マネージャー』→『SQL Server ネットワークの構成』→『(インスタンス名) のプロトコル』
『TCP/IP』を有効にして、『SQL Server (インスタンス名)』のサービスを再起動する。
・SQL Server Management Studioで、インスタンスを右クリック→プロパティ→接続→『このサーバーへの
  リモート接続を許可する』にチェックを入れる。(デフォルトで入ってるはず)

『既定のインスタンス』を選んでインストールした場合
TCP 1433ポートを許可する。
・SQL Server Management Studioなどでの接続先はサーバ名のみを指定する。

『名前つきインスタンス』を選んでインストールした場合
・プログラム「C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLSERVER2008R2\MSSQL\Binn\sqlservr.exe」に対して、
  TCPポート全てを許可するようにする。
(インストール先が違うならそれに合わせて調べれば、sqlservr.exeがあると思う。)
・『SQL Server Browser』 サービスを起動する。
・SQL Server Management Studioなどでの接続先はサーバ名\インスタンス名と指定する。

 

『名前つきインスタンス』を選んでインストールした場合の設定方法は、
セキュリティ的にOKな方法なのかどうかは知らんが、とりあえずこれさえやれば動く。

 

他に調べて見つけたサイトをメモっておこう!
Windows7やXPにSQL Serverをインストールした場合のファイアウォールの設定が書いてあった。
SQL Server2008をファイアーウォールの例外設定にする方法

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です