レッスン 2: 別のコンピューターからの接続

セキュリティを強化するため、SQL Server Developer、Express、および Evaluation Editions のデータベース エンジンは、最初にインストールした状態では別のコンピューターからアクセスできないようになっています。このレッスンでは、別のコンピューターから接続するために、プロトコルの有効化、ポートの構成、Windows ファイアウォールの構成を行う方法について学習します。

このレッスンの内容は次のとおりです。

  • プロトコルの有効化

  • 固定ポートの構成

  • ファイアウォールでポートを開く

  • 別のコンピューターからのデータベース エンジンへの接続

  • SQL Server Browser サービスを使用した接続

プロトコルの有効化

セキュリティを強化するため、SQL Server Express、Developer、および Evaluation は限られたネットワーク接続のみを対象としてインストールされます。データベース エンジンには、同じコンピューターで実行しているツールから接続できますが、別のコンピューターからは接続できません。データベース エンジンと同じコンピューターで開発作業を行う場合は、追加のプロトコルを有効にする必要はありません。Management Studio または Management Studio Express は、共有メモリ プロトコルを使用してデータベース エンジンに接続します。このプロトコルは既に有効になっています。

別のコンピューターからデータベース エンジンに接続する場合は、TCP/IP などのプロトコルを有効にする必要があります。

別のコンピューターからの TCP/IP 接続を有効にするには

  1. [スタート] ボタンをクリックし、[すべてのプログラム]、[Microsoft SQL Server 2008 R2]、[構成ツール] の順にポイントして、[SQL Server 構成マネージャー] をクリックします。

    注意

    32 ビットと 64 ビットの両方のオプションが用意されている場合があります。

  2. SQL Server 構成マネージャー[SQL Server ネットワークの構成] を展開し、[<InstanceName> のプロトコル] をクリックします。

    既定のインスタンス (名前のないインスタンス) は、MSSQLSERVER として一覧表示されます。名前付きインスタンスをインストールした場合は、指定した名前が一覧に表示されます。SQL Server 2008 Express は、セットアップ中に名前を変更していない限り、SQLEXPRESS と表示されます。

  3. プロトコルの一覧で、有効にするプロトコル ([TCP/IP]) を右クリックし、[有効化] をクリックします。

    注意

    ネットワーク プロトコルを変更したら SQL Server サービスを再起動する必要がありますが、これは次の作業で実行されます。

固定ポートの構成

セキュリティ強化のため、Microsoft Windows XP Professional Service Pack 2 (SP2)、Windows Server 2008、Windows Vista、および Windows 7 では、Windows ファイアウォールが有効になっています。別のコンピューターからこのインスタンスに接続するには、ファイアウォールで通信ポートを開く必要があります。データベース エンジンの既定のインスタンスはポート 1433 でリッスンするので、固定ポートを構成する必要はありません。ただし、SQL Server Express の名前付きインスタンスは、動的ポートでリッスンします。ファイアウォールでポートを開く前に、まずデータベース エンジンが固定ポートまたは静的ポートと呼ばれる特定のポートでリッスンするように構成する必要があります。このように構成しないと、データベース エンジンは起動のたびに異なるポートでリッスンする可能性があります。ファイアウォール、Windows ファイアウォールの既定の設定の詳細と、データベース エンジン、Analysis Services、Reporting Services、および Integration Services に影響する TCP ポートの説明については、「SQL Server のアクセスを許可するための Windows ファイアウォールの構成」を参照してください。 

注意

ポート番号の割り当ては、Internet Assigned Numbers Authority によって管理され、http://www.iana.org に一覧が掲載されています。ポート番号には 49152 ~ 65535 の数値を割り当てる必要があります。

SQL Server が特定のポートでリッスンするよう構成するには

  1. SQL Server 構成マネージャーで、[SQL Server ネットワークの構成] を展開し、構成するサーバー インスタンスをクリックします。

  2. 右側のペインで、[TCP/IP] をダブルクリックします。

  3. [TCP/IP のプロパティ] ダイアログ ボックスの [IP アドレス] タブをクリックします。

  4. [IPAll] セクションの [TCP ポート] ボックスで、使用可能なポート番号を入力します。このチュートリアルでは、「49172」を使用します。

  5. [OK] をクリックしてダイアログ ボックスを閉じ、サービスを再起動する必要があるという警告が表示されたら [OK] をクリックします。

  6. 左ペインで、[SQL Server のサービス] をクリックします。

  7. 右ペインで、SQL Server インスタンスを右クリックし、[再起動] をクリックします。データベース エンジンが再起動すると、ポート 49172 でリッスンするようになります。

ファイアウォールでポートを開く

ファイアウォール システムは、コンピューター リソースへの不正アクセスを防ぐのに役立ちます。ファイアウォールが有効になっている場合に別のコンピューターから SQL Server に接続するには、ファイアウォールでポートを開く必要があります。

重要な注意事項重要

ファイアウォールのポートを開くと、サーバーが攻撃を受けやすくなります。ポートを開く前に、ファイアウォール システムに関する理解を深めておいてください。詳細については、「SQL Server インストールにおけるセキュリティの考慮事項」を参照してください。

固定ポートを使用するようデータベース エンジンを構成した後、次の手順に従って、Windows ファイアウォールで固定ポートを開きます (既定のインスタンスに固定ポートを構成する必要はありません。既定のインスタンスには、TCP ポート 1433 が構成済みです)。

TCP アクセス用に Windows ファイアウォールのポートを開くには (Windows 7 の場合)

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックして「WF.msc」と入力し、[OK] をクリックします。

  2. [セキュリティが強化された Windows ファイアウォール] の左ペインの [受信の規則] をクリックし、[操作] ペインの [新規の規則] をクリックします。

  3. [規則の種類] ダイアログ ボックスで、[ポート] をクリックし、[次へ] をクリックします。

  4. [プロトコルおよびポート] ダイアログ ボックスで、[TCP] をクリックします。[特定のローカル ポート] を選択し、データベース エンジン インスタンスのポート番号を入力します。既定のインスタンスの場合は「1433」と入力します。名前付きインスタンスを構成する場合や、前の作業で固定ポートを構成した場合は、「49172」と入力します。[次へ] をクリックします。

  5. [操作] ダイアログ ボックスで、[接続を許可する] をクリックし、[次へ] をクリックします。

  6. [プロファイル] ダイアログ ボックスで、データベース エンジンに接続するときのコンピューター接続環境を表すプロファイルをすべて選択し、[次へ] をクリックします。

  7. [名前] ダイアログ ボックスで、この規則の名前と説明を入力し、[完了] をクリックします。

Windows ファイアウォールでポートを開くには (Windows XP の場合)

  1. [スタート] メニューで、[コントロール パネル] をクリックします。

  2. コントロール パネルで、[ネットワークとインターネット接続] をクリックして、[Windows ファイアウォール] を開きます。

  3. [Windows ファイアウォール] で、[例外] タブをクリックして、[ポートの追加] をクリックします。

  4. [ポートの追加] ダイアログ ボックスの [名前] ボックスに、「SQL Server<instanceName>」と入力します。

  5. [ポート番号] ボックスに、データベース エンジン インスタンスのポート番号を入力します。既定のインスタンスの場合は「1433」と入力します。名前付きインスタンスを構成する場合や、前の作業で固定ポートを構成した場合は、「49172」と入力します。[TCP] が選択されていることを確認して、[OK] をクリックします。

Windows Vista での手順も含めたファイアウォールの構成の詳細については、「データベース エンジン アクセスを有効にするための Windows ファイアウォールの構成方法」を参照してください。Windows ファイアウォールの既定の設定の詳細と、データベース エンジン、Analysis Services、Reporting Services、および Integration Services に影響する TCP ポートの説明については、「SQL Server のアクセスを許可するための Windows ファイアウォールの構成」を参照してください。

別のコンピューターからのデータベース エンジンへの接続

固定ポートでリッスンするようにデータベース エンジンを構成し、ファイアウォールでそのポートを開いたら、別のコンピューターから SQL Server に接続できます。

サーバー コンピューターで SQL Server Browser サービスが実行され、ファイアウォールで UDP ポート 1434 が開いている場合は、コンピューター名とインスタンス名を使用して接続を確立できます。セキュリティ強化のため、今回の例では SQL Server Browser サービスは使用しません。

別のコンピューターからデータベース エンジンに接続するには

  1. SQL Server のクライアント ツールがインストールされている別のコンピューターに、SQL Server への接続権限のあるアカウントを使用してログインし、Management Studio を開きます。

  2. [サーバーへの接続] ダイアログ ボックスで、[サーバーの種類] ボックスが [データベース エンジン] になっていることを確認します。

  3. [サーバー名] ボックスに「tcp:」と入力してプロトコルを指定し、続けてコンピューター名、コンマ、ポート番号の順に入力します。既定のインスタンスに接続する場合、ポート 1433 が暗黙的に設定されるためポート番号を省略できます。したがって、この場合は「tcp:<computer_name>」と入力します。この名前付きインスタンスの例では、「tcp:<computer_name>,49172」と入力します。

    注意

    [サーバー名] ボックスで tcp: を省略した場合、クライアントは有効になっているすべてのプロトコルをクライアント構成で指定された順序で試行します。

  4. [認証] ボックスで、[Windows 認証] が選択されていることを確認し、[接続] をクリックします。

SQL Server Browser サービスを使用した接続

SQL Server Browser サービスは、SQL Server の各種リソースに関する着信要求を受信し、このコンピューター上にインストールされている SQL Server インスタンスに関する情報を提供します。SQL Server Browser サービスが実行されている場合、ユーザーはコンピューター名とポート番号の代わりにコンピューター名とインスタンス名を指定して、名前付きインスタンスに接続できます。SQL Server Browser は、認証されていない UDP 要求を受信します。したがって、セットアップで有効にしない場合もあります。サービスの説明と、有効にする場合の説明については、「SQL Server Browser サービス」を参照してください。

SQL Server Browser を使用するには、前と同じ手順に従ってファイアウォールで UDP ポート 1434 を開く必要があります。

これで、基本的な接続に関する簡単なチュートリアルを終了します。サーバーとクライアントの接続設定の詳細については、「データベース エンジン接続について」を参照してください。

チュートリアル ポータルに戻る

チュートリアル: データベース エンジンの概要