インストールした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有効、名前付きパイプ無効の場合
接続できない。
ファイヤウォールによって接続てきないケース