てきとーにインストールしても(一個目のインスタンスなら)だいたいまともに動作してくれる SQL Serverですが、それでもリモートからアクセスできるようにする際に、はまりポイントがあります。
Windows Firewall の設定
SQL Serverがリッスンしているポートの受信側に穴を開ける必要があります。SQL Server既定インスタンスがデフォルトで使用するポートはTCP1433(SQL Server)、UDP1434(SQL Server Browser)ですので、これを受信側に設定します。
手順
設定は「コントロールパネル」→「管理ツール」→「セキュリティが強化された Windows ファイアウォール」で行います。
これでOK。
SQL Server 構成マネージャーのネットワーク構成
ファイアウォールの設定のところでデフォルトではTCP1433、UDP1434と書きましたが、名前付きインスタンスをいきなり作った場合などでこのデフォルト値が設定されないケースがありました。
ですので、一応SQL Server 構成マネージャーのネットワーク構成もチェックしておきましょう。
手順
「○○○(インスタンス名)のプロトコル」 → 「TCP/IP」のプロパティ → 「IPアドレス」タブで1433が指定されていることを確認します。
この記事を書いた理由…
リモートからの接続にずいぶん時間がかかってたんです。30秒以上ぐらい。それでも一応つながるので、なんかおかしい、ということで調べてみました。
そしたら、SQL ServerのTCP/IPポート設定が、IP1~IP5のTCPポートが空白・動的ポートが0、IPAllのTCPポートが空白・動的ポート47なんとかに設定されてました。
リモートから接続するときの30秒はTCP/IP接続がタイムアウトする時間で、一応つながったのは名前付きポートが有効になっていたから、というオチでした。
SQL Server 2008 R2で確認しました。
One Reply to “SQL Server の構成時に注意することメモ”