既定のクライアント接続の動作

更新 : 2005 年 12 月 5 日

SQL Native Client をクライアント コンピュータにインストールすると、すぐにそのクライアントでデータベース エンジンのインスタンスに接続できるようになります。通常、データベース エンジンのインスタンスに接続するために、SQL Server 2005 クライアントで特別な構成を行う必要はありません。クライアント アプリケーションで指定する必要がある情報は、コンピュータ名とインスタンス名だけです。SQL Server Browser サービスがサーバーで実行されていない場合は、接続のエンドポイント (TCP/IP ポートまたは名前付きパイプ) を指定して名前付きインスタンスに接続する必要があります。

ms190204.note(ja-jp,SQL.90).gifメモ :
サーバー ネットワーク プロトコルは、既定では無効になっています。詳細については、「サーバー ネットワーク プロトコルを有効または無効にする方法 (SQL Server 構成マネージャ)」を参照してください。

サーバーでのローカル接続

ローカル クライアントからデータベース エンジンに接続する場合 (クライアント アプリケーションと SQL Server が同じコンピュータ上にある場合)、接続では既定で共有メモリ プロトコルが使用されます。SQL Native Client では、共有メモリ プロトコルを使用してローカルで接続するために、次の形式のいずれかを使用できます。

  • "<computer_name>"
  • 名前付きのインスタンスの場合は "<computer_name>\<instance_name>"
  • "(local)"
  • 名前付きのインスタンスの場合は "(local)\<instance_name>"
  • "Localhost"
  • 名前付きのインスタンスの場合は "localhost**\**<instance_name>"
  • 単一のピリオド "."
  • 名前付きのインスタンスの場合は ".\<instance_name>"

別のプロトコルを使用して、(トラブルシューティングのために) ローカルで接続するには、そのプロトコルを有効にして次のいずれかを行います。

  • プロトコルを指定するクライアント エイリアスに接続します。詳細については、SQL Server 構成マネージャのヘルプの「エイリアス」を参照してください。
  • コンピュータ名の前にプロトコルを付加します (たとえば、"np:<computer_name>" または "tcp:<computer_name>" など)。
  • IP アドレスに接続して TCP/IP 接続を確立します。
  • 完全修飾ドメイン名 (FQDN) に接続して TCP/IP 接続を確立します (たとえば、"<computer_name>.<domain_name>.com" など)。

接続プロトコルの確認

次のクエリからは、現在の接続で使用しているプロトコルが返されます。

SELECT net_transport 
FROM sys.dm_exec_connections 
WHERE session_id = @@SPID;

ネットワーク経由の接続

既定では、SQL Server クライアントで通常使用するプロトコルは TCP/IP です。TCP/IP を使用して接続できない場合は、別の有効なプロトコルで接続しようとします。ネットワークを経由する場合、共有メモリ接続は使用できません。SQL Server 構成マネージャを使用して、クライアント プロトコルの有効化や無効化を行ったり、接続の試行順番を変更したりします。

以前のバージョンの SQL Server との互換性

SQL Server 2005 の既定のインスタンスは、Microsoft SQL Server 2000 や Microsoft SQL Server 7.0 など、以前のバージョンの SQL Server と同じネットワーク アドレスをリッスンします。以前のバージョンのクライアント接続コンポーネントを使用するアプリケーションは、変更されることなく引き続き既定のインスタンスに接続します。SQL Server 2005 の名前付きインスタンスは、動的ポートをリッスンします。以前のバージョンのクライアント接続コンポーネントを使用するクライアント コンピュータを、そのような動的ポートのアドレスに接続するように設定する必要があります。詳細については、「クライアントが使用するサーバーの別名を作成する方法 (SQL Server 構成マネージャ)」を参照してください。

SQL Native Client または Microsoft Data Access Components (MDAC) クライアントが既にインストールされている場合、プロトコルの設定が維持されます。新規インストールの場合、クライアントでは VIA を除くすべてのプロトコルが有効であり、共有メモリ、TCP、名前付きパイプの順にプロトコルの適用が試行されます。

名前付きインスタンスに接続するには、MDAC クライアントを MDAC 2.6 以上にアップグレードする必要があります。

ms190204.note(ja-jp,SQL.90).gifメモ :
セキュリティ強化のため、SQL Server 2005 の Developer、Evaluation、および SQL Server Express の各エディションの新規インストールでは SQL Server 2005 への TCP/IP による接続が無効になっています。MDAC 2.8 を使用して接続する OLEDB アプリケーションでは、"."、"(local)"、または (<空白>) をサーバー名に使用してローカル サーバーの既定のインスタンスに接続することができません。これを解決するには、サーバー名を指定するか、そのサーバーの TCP/IP を有効にします。ローカルの名前付きインスタンスへの接続および SQL Native Client を使用した接続は、影響を受けません。以前のバージョンの SQL Server が存在する環境も、影響を受けないことがあります。

参照

概念

SQL Server Browser サービス

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2005 年 12 月 5 日

変更内容 :
  • ローカルでの接続に関する説明を拡充し、別の例を追加しました。