1.概要

データをリストアしただけでは外部環境からデータベースに接続することはできない。
どうすれば接続が出来るようになるのか。

2.SQL Server 構成マネージャー

まずはSQL Serverの入ったサーバ上で、SQL Server Management Studio (SSMS) を起動する。

サーバ名:AP0SERVER\SQLEXPRESS
認証方法:Windows 認証

「接続」する

次に、SQL Server の設定を行う。

SQL Server 構成マネージャーを起動します。

通常はスタートにありますが、無い場合はC:\Windows\System32 に存在します。
SQLServerManager*.msc でファイルを検索すると見つかります。
SQL Server 2019の場合は 「SQLServerManager15.msc」というプログラムになります。

SQL Server 構成マネージャーを起動します。

SQL Server ネットワークの構成をクリック。

SQLEXPRESSのプロトコル を開いて

TCP/IPを「有効」を「はい」にして「OK」

サービスを再起動するまでは反映されない。旨が表示されるので「OK」

続けて同じく「TCP/IPのプロパティ」で「IPアドレス」の一番下の所で、「IPALL」の TCPポートを1433にして、「OK」をクリック。
これについてもサービスを再起動するまでは反映されない。

それではサービスを再起動するには、SQL Server 構成マネージャーの「SQL Server のサービス」でSQL Serverを右クリックして「再起動」

再起動中

SQL Serverと一緒にインストールされている SQL ServerBrowser の設定を行う。

SQL Server 構成マネージャー の「SQL Server Browser」を右クリックプロパティ

SQL ServerBrowserのプロパティの「サービス」タブで「開始モード」を「自動」にして、「OK」

3.Windowsファイアウォールの設定

次にWindowsファイアウォールの設定を行う。
「コントロールパネル」の「システムとセキュリティ」

「Windows Defender ファイアウォール」をクリック。

「詳細設定」をクリック。

「受信の規制」をクリックして、「新しい規則」

「ポート」の「プロトコルおよびポート」をクリック

TCPを選択して特定のローカルポートを1433にして「次へ」

「接続を許可する」で「次へ」

プロファイルはドメイン、プライベート、パブリックにチェックをつけて「次へ」

名前を「SQL Server (tcp/1433)」にして「完了」

同様にSQL Server Browserの通信設定を行う

「受信の規制」の「新しい規則」

「ポート」の「プロトコルおよびポート」をクリック

UDPを選択して特定のローカルポートを1434にして「次へ」

「接続を許可する」で「次へ」

プロファイルはドメイン、プライベート、パブリックにチェックをつけて「次へ」

名前を「SQL Server (udp/1434)」にして「完了」

これで完了

4.動作確認

クライアント側から動作確認をしてみる。

例えば、コントロールパネルを開く

管理ツールを開く

ODBCデータソース(64bit)を開く

「ユーザーDSN」タブで「追加」

「SQL Server」を選択して「完了」

既知のデータソースの名前を入力する。そしてサーバーをプルダウンから選択して「完了」プルダウンでサーバーが見つかれば大丈夫だろう。

「データソースのテスト」を押す。

直ぐに「テストは無事に完了しました。」されれば、「OK」

例えばAccessでSQLServerに接続している場合、リンクテーブルマネージャーで接続先を変えるものや、プログラムで接続先を変えるものなど様々あるが、これらの変更をして、リンクテーブルを開くとレコードが表示されることが確認できる。

他にもWindows認証ではなくSQL Server認証にして自分でユーザ名パスワードを設定して、クライアント側にインストールしたSSMSで接続するなどして確認することもできる。

うまく接続できない場合は、ネットワークの設定の問題であったり、Accessならプログラムで接続する部分で何かを実行しないと接続できないようになっていたり、接続先をテーブルで管理されていたりすることもある。
そもそもサーバ側で接続できないのであれば、データベースのインストールや設定が間違っているのかもしれないし、クライアントで繋がらないならファイアウォールの設定が間違っていたり、SQL Server Browserの設定が間違っている可能性がある。

おすすめの記事