SQL Serverに外部から接続する備忘録

リモート接続を許可

まずSQLServerMnagementStudioを起動してリモート接続を許可しておく。

(1)SQL Server 構成マネージャーを起動する

=SQL Server Configuration Manager

スタートメニューから「SQL Server 構成マネージャー」を起動する。場所は以下にあります。

(cmdからでも起動可)

SQL Server 2017 C:\Windows\SysWOW64\SQLServerManager14.msc
SQL Server 2016 C:\Windows\SysWOW64\SQLServerManager13.msc
SQL Server 2014 (12.x) C:\Windows\SysWOW64\SQLServerManager12.msc
SQL Server 2012 (11.x) C:\Windows\SysWOW64\SQLServerManager11.msc

(2)TCP/IPの有効化

左サイドメニューから「SQL Server ネットワークの構成」の中にある「SQLEXPRESS のプロトコル」を選択

「TCP/IP」が「無効」になっている場合は「有効」にする

「TCP/IP」プロパティ「IPアドレス」タブの「IPAll」の「TCP ポート」を「1433」に設定。さらに「TCP 動的ポート」を空白にする。

「SQL Server のサービス」→「SQL Server(SQLEXPRESS)」を選択し右クリック「再起動」

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

Windowsボタン横の検索窓「ファイアウォールの状態の確認」と入力して起動(wf.msc)

左サイドメニューから「詳細設定」を選択
左サイドメニューから「受信の規制」を選択
右サイドメニューから「新しい規則…」を選択

「新規の受信の規則ウィザード」が開くので「規則の種類」では「ポート」を選択して次へ

「プロトコル及びポート」では「TCP」と「特定のローカルポート」を選択し「1433」を入力「次へ」「接続を許可する」
「プロファイル」では「ドメイン」「プライベート」「パブリック」のいずれもチェックをONにする
「名前」では「SQL Server (1433)」など適当に命名

ついでにUDP1434も、、、、

以上でリモート接続できるか確認。

「SQL ServerBrowser」を起動

Windows検索窓で「サービス」→管理者で起動する
★無効になっていたら、自動起動にする。

=====

参考:

[プロトコル] タブの [すべて受信待ち] 設定が [はい] に設定されている場合は、 [IPAll] セクションの [TCP ポート] と [TCP 動的ポート] の値のみが使用され、個々の [IPn] セクションは無視される。

つまりは、 [すべて受信待ち] 設定を [はい]にして、[TCP ポート] 1433 と [TCP 動的ポート] 空欄にする。

[すべて受信待ち] の設定が [いいえ] に設定されている場合、 [IPAll] セクションの [TCP ポート] と [TCP 動的ポート] の設定は無視され、個々の [IPn] セクションの [TCP ポート] 、 [TCP 動的ポート] 、および [有効] の設定が代わりに使用されます。

各 [IPn] セクションには、既定値が [いいえ] の [有効] 設定があります。[いいえ] では、ポートが定義されている場合でも、SQL Server でこの IP アドレスは無視されます。

=====
以下、いらないかもしれません、、、

できない場合は、、、プログラムもいっときましょうか

Windowsボタン横の検索窓「ファイアウォールの状態の確認」と入力して起動(wf.msc)

例:%ProgramFiles%\Microsoft SQL Server\MSSQL14.EXP2017\MSSQL\Binn\sqlservr.exe

データベースの復元が出来ない時は

ログイン ビルトイン ローカルとの対話