クライアントパソコンからホストサーバーへ接続できない場合、ホストサーバー側にて以下の設定を見直してください。
A.ファイアウォールの例外設定
「Windows XP Service Pack 2(以下 SP2)」以降のOSでは、ネットワークを通じてウイルスなどの攻撃からコンピューターを保護するため、Windowsファイアウォールに多くの機能強化が施されています。その機能強化に伴い、SQL Server2017がブロック(制限)されていると、データベースへのアクセスが抑制され、ホストサーバーにクライアントが接続できないという問題が発生します。
この問題を解決し、安全にLANパックやピア・ツー・ピアでの運用を行うため、Windowsファイアウォール機能にてSQL Server2017のブロック解除を行います。以下ご参照ください。
※以下の操作はホストサーバーにて操作してください。
<操作手順>
1.コンピューターの管理者権限を持つユーザーアカウントでログインします。
2. キーボードの「Windowsキー()」 を押しながら「S」キーを押し、「ここに入力して検索」または「ユーザー、ファイルなどを検索」欄に『コントロールパネル』と入力し、Enterキーを押します。
※Windows 8.1の場合はキーボードで「Windowsキー()」を押しながら「X」キーを押します。
3.表示方法は「カテゴリ」の状態で「システムとセキュリティ」を選択します。
4.「Windowsファイアウォールによるアプリケーションの許可」を選択します。
5.画面右上の[設定の変更]ボタンをクリックします。
6.画面右下の[別のアプリの許可]ボタンをクリックします。
7.「アプリの追加」画面が表示されます。画面右下の[参照]ボタンをクリックします。
8.「参照」画面が表示されますので、以下の場所から「sqlservr.exe」を選択し、[開く]ボタンを
クリックします。
C:\Program Files(x86)\Microsoft SQL Server\MSSQL14.xxx(※)\MSSQL\Binn\sqlservr.exe
「MSSQL14.xxx」が「Program Files(x86)」にない場合は「Program Files」をご参照ください。
C:\Program Files\Microsoft SQL Server\MSSQL14.xxx(※)\MSSQL\Binn\sqlservr.exe
※「xxx」はSQLserver2017インストール時におけるインスタンス名となります。複数のインスタンスがある場合は、それぞれのインスタンスについて設定してください。
9.「アプリの追加」画面に戻りますので「SQL Server Windows NT」を選択し、[追加]ボタンをクリックします。
10.「許可されたアプリおよび機能」内に追加した「SQL Server Windows NT‐64Bit」が表示されますので、左側のチェックボックスと、右側の「プライベート」と「パブリック」のチェックボックスにそれぞれチェックを付けます。
11.引き続き、「sqlbrowser.exe」を設定するため、画面右下の[別のアプリの許可]ボタンをクリックします。
12.「アプリの追加」画面が表示されます。画面右下の[参照]ボタンをクリックします。
13.「参照」画面が表示されますので以下の場所から「sqlbrowser.exe」を選択し、[開く]ボタンをクリックします。
C:\Program Files(x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe
※上記の場所に「sqlbrowser.exe」が存在しない場合は、以下の方法でファイルの場所を確認してから、設定します。
(ア)キーボードで「Windowsキー()」を押しながら「X」キーを押し、「エクスプローラー」をクリックして下記のファイルを実行します。
C:\Windows\SysWOW64\SQLServerManager14.msc
(イ)「ユーザーアカウント制御」画面が表示されますので[はい]ボタンをクリックします。
(ウ)「Sql Server Configuration Manager」が表示されましたら、左枠から「SQL Serverのサービス」を選択し、右枠の「SQL Server Browser」を右クリックし、[プロパティ]を選択します。
(エ)[サービス]タブの「バイナリ パス」が「sqlbrowser.exe」の場所になります。表示しきれない部分に関してはキーボードの[→]キーで進めてご確認ください。
(オ)確認が終了しましたら、「SQL Server Browserのプロパティ」および「Sql Server Configuration Manager」画面は右上の[×]ボタンで終了して、手順13の「sqlbrowser.exe」を設定します。
14.「アプリの追加」画面に戻りますので「SQL Browser Service EXE」を選択し、[追加]ボタンをクリックします。
15.「許可されたアプリおよび機能」内に追加した「SQL Browser Service EXE」が表示されますので、左側のチェックボックスと、右側の「プライベート」と「パブリック」のチェックボックスにそれぞれチェックを付けます。
16.画面下部の[OK]ボタンをクリックします。
17.LANパックやピア・ツー・ピアにてクライアントからホストサーバーにアクセスできることをご確認ください。
ファイアウォールの例外設定を行ってもクライアントからホストサーバーにアクセスできない場合は、下記操作手順Bの設定を行ってください。
B.プロトコルの有効化
SQLServerセキュリティ構成と構成マネージャーからSQLServerの設定を見直します。
1.以下の方法で「SQL Server構成マネージャー」を開きます。
(ア)キーボードの「Windowsキー()」を押しながら「R」キーを押し「ファイル名を指定して実行」を表示します(またはデスクトップ画面のスタートボタンを右クリックし、表示されたリストから「ファイル名を指定して実行」をクリックします)。
(イ)以下のフォルダーパスをコピーして、「名前」欄に貼り付けて[OK]ボタンをクリックします。
C:\WINDOWS\SysWOW64\SQLServerManager14.msc
※SQL Server2017は64bit版OSにのみ対応しています。
※コピーと貼り付けがうまくいかない場合は、お手数ですが「名前」欄に手入力してください。
※ユーザーアカウント制御画面が表示されましたら、[はい]ボタンをクリックします。
2.左の画面から「SQL Serverネットワークの構成」-「使用しているインスタンス名のプロトコル」をクリックします。
3.右の画面で「共有メモリ」、「名前付きパイプ」、「TCP/IP」の「状態」をすべて『有効』にします。
『有効』になっていない場合は、変更するプロトコル名を右クリックして、「有効化」をクリックします。
4.警告メッセージは[OK]ボタンをクリックします。
5.「SQL Server構成マネージャー」の左の画面から「SQL Server のサービス」をクリックします。
6.右側の画面で「SQL Server (使用しているインスタンス名)」と「SQL Server Browser」を右クリックして、「再起動」をクリックします。
7.両方の再起動が完了しましたら、開いている画面をすべて終了し、クライアントからホストサーバーにアクセスできるかをご確認ください。