SQL Server へ他のPCからも接続できるようにする

インストールしたSQL Server へ他のPCから接続できるようにします。

SQL Server のデフォルト設定は、他のPCから接続できないようになっています。設定変更やファイヤウォールを設定することでExpress Editionもサーバーとして使用できるようになります。


事前に必要な、SQL Server のインストールやTPiCSのテーブル作成については

SQL Server Express Edition でTPiCSデモ環境作成 を参考にしてください。

大まかに、事前に必要な作業は以下です。

 ・SQL Server の構成マネージャー SQL Server サービスの自動起動

 ・Management Studio でWindows 認証→混合認証
 ・Management Studio でsa ユーザーの有効化
 ・Management Studioから sa ユーザー接続
 ・TPiCSのデータベース設定ツールから接続
 ・TPiCS本体からの接続

SQL Server の インスタンス名を確認

外部から接続に必要なサービスや設定は、インスタンスによって変わります。

SQL Server の構成マネージャーでインスタンスを確認

SQL Server の構成マネージャ

Windowsのスタートメニューから[SQL Server 2022 構成マネージャー]をクリック。

 

 

SQL Serverをインストールしたコンピュータで確認します。

クライアントPCから、サーバーの構成マネージャーは開けません。

サービス名 ”SQL Server (MSSQLSERVER)”

SQL Server 名前 が ”SQL Server (MSSQLSERVER)”ならば、
既定のインスタンス



サービス名 ”SQL Server (SQLEXPRESS)”

SQL Server 名前 が ”SQL Server (SQLEXPRESS)ならば、
名前付きインスタンス

他に、SQL Serverのインストール時に、インスタンス名を"SQL2022"のように設定した場合も、”SQL Server (SQL2022)”のように表示され、これも名前付きインスタンス。

"MSSQLSERVER"以外は名前付きインスタンス。

 


既定のインスタンス(MSSQLSERVER)へ他のPCから接続可能にする

SQL Server のサービスの設定

デフォルトの状態でよい。

 

・SQL Browser サービス                                        :停止(接続には不要)

・SQL Server (MSSQLSERVER)                             :実行中

・SQL Server  エージョント (MSSQLSERVER)   :停止(接続には不要)(ExpressEdtion は有効にできません)

 

SQL Server ネットワークの構成の設定

・名前付きパイプ                 :無効

・TCP/IP                                :有効(必須)


 

サーバー側のWindowsファイヤウォールを設定

 

 通常許可されてない。

 

ファイヤーウォールの許可

・TCPプロトコルのポート:1433 通信許可が必須。

 

(UDPプロトコルのポート:1434 通信できなくてよい。)

 

サービス名で指定する方法

 ポートで設定の方法の他にサービスの指定して通信を許可する方法もある。

 サービス名:SQL Server MSSQLSQRVER を許可

 

※ファイアウォールの設定は[コントロールパネル]-[システムとセキュリティ]-[Windows Defender ファイアウォール]から設定を行います。

Windows Defender ファイヤウォールで新しい規則追加

規則の種類

●ポート を選択。

プロトコルおよびポート

プロトコル

●TCP を選択

特定のローカルポート:1433

操作

接続の許可(デフォルト)。

プロファイル

☑ドメイン

☑プライベート

☑パブリックをチェック(デフォルト)。

ドメインネットワーク環境内のみ通信を許可することや、ドメインとプライベートネットワーク環境のみ許可する設定をします。

後からも変更できるので、接続検証のために、3つとも(どこでのネットワーク接続でも)通信許可でよいです。

接続が確認できてから、パブリックはOFFのような設定をしていくとよいです。

 

規則の名前

規則の名前は自由に付けてください。

既定のインスタンスへ接続するクライアントPC側の設定

 ●SQL Server  クライアントソフト不要。

 ●SQL Server Management Studio

   ローレベル接続の検証には、SQL Server Management Studio をインストールします。

   PCからの接続検証ができれば、大概は同様に接続できます。

   ※TPiCSのクライアント使用には不要です。

 ●ファイヤーウォール

   設定不要。

名前付きインスタンス(SQLEXPRESS)へ他のPCから接続可能にする

SQL Server のサービス設定

デフォルトから、SQL Browserの起動が必要。

 

・SQL Browser サービス                                  :実行中(必須)

・SQL Server (SQLEXPRESS)                          :実行中

・SQL Server  エージョント (SQLEXPRESS):停止(ExpressEdtion は有効にできません)


 

SQL Server ネットワークの構成の設定

・名前付きパイプ                 :有効(必須)

・TCP/IP                                :無効


 

SQL Server (SQLEXPRESS)を再起動

[SQL Server 構成マネージャー(ローカル)]‐[SQL Server のサービス]‐「SQL Server (SQLEXPRESS)」を右クリックし、再起動をクリック。

名前付きパイプの設定を有効にするため、SQL Server の再起動が必要。

 


 

サーバー側のWindowsファイヤウォールを設定

 

 通常許可されてない。

 

ファイヤーウォールの許可

(TCPプロトコルのポート:1433 通信できなくてよい。)

 

・UDPプロトコルのポート:1434 通信許可が必須。

 

サービス名で指定する方法

 ポートで設定の方法の他にサービスの指定して通信を許可する方法もある。

 サービス名:SQL Browser を許可

 

※ファイアウォールの設定は[コントロールパネル]-[システムとセキュリティ]-[Windows Defender ファイアウォール]から設定を行います。

 

Windows Defender ファイヤウォールで新しい規則追加

規則の種類

●ポート を選択。

プロトコルおよびポート

プロトコル

●UDP を選択

特定のローカルポート:1434

操作

接続の許可(デフォルト)。

プロファイル

☑ドメイン

☑プライベート

☑パブリックをチェック(デフォルト)。

ドメインネットワーク環境内のみ通信を許可することや、ドメインとプライベートネットワーク環境のみ許可する設定をします。

後からも変更できるので、接続検証のために、3つとも(どこでのネットワーク接続でも)通信許可でよいです。

接続が確認できてから、パブリックはOFFのような設定をしていくとよいです。

 

規則の名前

規則の名前は自由に付けてください。

名前付きインスタンスへ接続するクライアントPC側の設定

 ●SQL Server  クライアントソフト不要。

 ●SQL Server Management Studio

   ローレベル接続の検証には、SQL Server Management Studio をインストールします。

   PCからの接続検証ができれば、大概は同様に接続できます。

   ※TPiCSのクライアント使用には不要です。

 ●ファイヤーウォール

   設定不要。

接続ができなとき

TCP/IPが無効のため接続できないケース

クライアントからサーバーへの接続で

SQL Server のTCP/IP無効、名前付きパイプ無効の場合

接続できない。

名前付きパイプが無効のため接続できないケース

クライアントからサーバーへの接続で

SQL Server のTCP/IP有効、名前付きパイプ無効の場合

接続できない。

ファイヤウォールによって接続てきないケース

 

関連