ArcGIS クライアントから Microsoft SQL Server に接続するには、サポート対象の Microsoft SQL Server ODBC ドライバーを ArcGIS クライアント コンピューターにインストールし、ArcGIS クライアントからデータベースに接続します。
すべての ArcGIS クライアント コンピューター上で SQL Server ODBC ドライバーが構成されたら、ArcGIS Pro または ArcMap でデータベース接続ファイルを作成します。SQL Server データベースでデータを参照する ArcGIS Server Web サービスを公開するには、データベース接続ファイルを ArcGIS Server サイトに登録します。
ArcGIS Proからの接続
ArcGIS Pro プロジェクトから SQL Server に接続するには、Microsoft ODBC Driver for SQL Server を ArcGIS Pro コンピューターにインストールし、データベース接続を作成します。ただし、まず、使用している SQL Server インスタンスがリモート コンピューターからの接続を許可できることを確認してください。
接続可能にするためのインスタンスの構成
SQL Server インスタンスは、デフォルトでは他のコンピューターからの接続を許可するように構成されていません。SQL Server の新しいインストールが存在する場合、SQL Server サービスが実行され、正しいポートでリスニングしていることを確認してください。詳細については、Microsoft SQL Server のドキュメントをご参照ください。
暗号化された接続を使用するには、SQL Server および ArcGIS Pro クライアント コンピューターの追加構成が必要です。
Microsoft ODBC Driver for SQL Server のインストール
Microsoft ODBC Driver for SQL Server は、Microsoft Download Center または My Esri から取得します。必ず、接続先の Microsoft のバージョンでサポート対象となっている SQL Server ODBC ドライバーを取得してください。ArcGIS Pro がインストールされているすべてのコンピューターにドライバーをインストールします。
データベースへの接続
データベース接続を追加するには、[データベース コネクション] ダイアログ ボックスまたは [データベース接続の作成 (Create Database Connection)] ツールを使用します。[データベース コネクション] ダイアログ ボックスを使用する場合の手順を次に示します。
- [カタログ] ウィンドウの [データベース] を右クリックして、[新しいデータベース コネクション] をクリックします。
- [データベース プラットフォーム] ドロップダウン リストで [SQL Server] を選択します。
- [インスタンス] テキスト ボックスに SQL Server インスタンスの名前を入力します。
たとえば、デフォルトの SQL Server インスタンスを使用している場合は、[インスタンス] テキスト ボックスにサーバーのインスタンス名または IP アドレスを指定することができます。IPV6 アドレスを指定する場合には、アドレスを括弧で囲みます。たとえば、サーバーの IPV6 アドレスが 2000:ab1:0:2:f333:c432:55f6:d7ee の場合、[データ ソース] テキスト ボックスに「[2000:ab1:0:2:f333:c432:55f6:d7ee]」と入力します。
データベースがデフォルト (1433) 以外のポートで接続を待ち受ける場合は、インスタンスにポート番号を含める必要があります。たとえば、SQL Server インスタンスが basset\spatial であり、ポート 61000 で接続を待ち受ける場合には、[インスタンス] テキスト ボックスに「basset\spatial,61000」と入力します。
たとえば、Microsoft Azure SQL Database のインスタンス名が cloudy4u.database.windows.net の場合、[インスタンス] テキスト ボックスに「cloudy4u.database.windows.net」と入力します。terra\gis という名前の SQL Server インスタンスを使用している場合、[インスタンス] テキスト ボックスに「terra\gis」と入力します。
[インスタンス] テキスト ボックスには、暗号化された接続および高可用性 SQL Server データベースへの接続のための追加テキストが必要です。
- データベースに接続する際に使用する認証タイプとして、 [データベース認証] または [オペレーティング システム認証] のいずれかを選択します。
- [オペレーティング システム認証] を選択した場合、ユーザー名とパスワードを入力する必要はありません。接続は、オペレーティング システムへのログインに使用されたログイン名とパスワードを使用して確立されます。オペレーティング システムに使用するログイン情報がデータベースへのログインでは無効である場合、接続は確立されません。
[データベース認証] を選択した場合、有効なデータベース ユーザー名とパスワードをそれぞれ [ユーザー名] と [パスワード] テキスト ボックスに指定する必要があります。ユーザー名には、最大で 30 文字まで入力できます。
ログイン情報を接続の一部として保存しない場合は、[ユーザー名/パスワードの保存] をオフにします。これは、データベースのセキュリティを維持するのに役立ちます。ただし、オフにした場合、接続時にユーザー名とパスワードを入力するよう求められます。
注意:
- データベース認証を使用してデータベースへのアクセス権を ArcGIS Web サービスに付与する接続ファイルの場合やこの接続ファイルを経由してアクセスするデータを ArcGIS Pro で検索する場合は、[ユーザー名とパスワードを保存する] チェックボックスをオンにする必要があります。
- ArcGIS の外部では、特殊文字を含むユーザー名を SQL Server に作成することができます。これらのユーザー名を使用する際は、常に区切り文字が必要となります。ArcGIS は SQL Server に渡すユーザー名に自動的に区切り文字を追加するため、ユーザー名に区切り文字を含める必要はありません。たとえば、ユーザー名が map.user の場合は、[ユーザー名] テキスト ボックスに「map.user」と入力します。「"map.user"」と入力する必要はありません。通常の識別子と区切り文字が追加された識別子の詳細については、SQL Server のドキュメントをご参照ください。
- [データベース] テキスト ボックスで、SQL Server または Azure SQL Database インスタンスで接続する特定のデータベースの名前を入力または選択します。データベース名の長さは 31 文字以下に制限されています。
ヒント:
SQL Server インスタンスへ接続する場合にはデータベース名の入力は任意です。ただし、入力が不要なのは、SQL Server インスタンスのデフォルトのデータベースとして割り当てられているデータベースへ接続する場合に限られます。Azure SQL Database へ接続する場合には、データベース名を入力する必要があります。
- [OK] をクリックして接続します。
ArcMapからの接続
ArcMap から SQL Server に格納されたデータベースまたはジオデータベースに接続するには、Microsoft ODBC Driver for SQL Server を ArcMap コンピューター上にインストールし、[カタログ] ツリーで接続ファイルを作成します。ただし、まず、使用している SQL Server インスタンスがリモート コンピューターからの接続を許可できることを確認してください。
接続可能にするためのインスタンスの構成
SQL Server インスタンスは、デフォルトでは他のコンピューターからの接続を許可するように構成されていません。SQL Server の新しいインストールが存在する場合、SQL Server サービスが実行され、正しいポートでリスニングしていることを確認してください。詳細については、Microsoft SQL Server のドキュメントをご参照ください。
Microsoft ODBC Driver for SQL Server のインストール
Microsoft ODBC Driver for SQL Server は、Microsoft Download Center または My Esri から取得します。必ず、接続先の Microsoft のバージョンでサポート対象となっている SQL Server ODBC ドライバーを取得してください。ArcMap がインストールされているすべてのコンピューターにドライバーをインストールします。
ドライバーを 64 ビット オペレーティング システムにインストールする場合、64 ビットの実行可能ファイルを実行します。これによって、32 ビットと 64 ビットの両方のファイルがインストールされます。32 ビットのインストールを 64 ビット オペレーティング システムで実行した場合は、正常に動作しません。
データベースへの接続
SQL Server のデータベースまたはジオデータベースに接続するには、ArcMap または ArcCatalog の [カタログ] ツリーの [データベース接続] ノードでデータベース接続を追加するか、[データベース接続の作成 (Create Database Connection)] ツールを使用します。
[データベース コネクション] ダイアログ ボックスを使用する場合の手順を次に示します。
- ArcMap または ArcCatalog の [カタログ] ツリーで [データベース接続] を展開して、[データベース接続の追加] をダブルクリックします。
- [データベース プラットフォーム] ドロップダウン リストで [SQL Server] を選択します。
- [インスタンス] テキスト ボックスに SQL Server インスタンスの名前を入力します。
たとえば、デフォルトの SQL Server インスタンスを使用している場合は、[インスタンス] テキスト ボックスにサーバーのインスタンス名または IP アドレスを指定することができます。IPV6 アドレスを指定する場合には、アドレスを括弧で囲みます。たとえば、サーバーの IPV6 アドレスが 2000:ab1:0:2:f333:c432:55f6:d7ee の場合、[インスタンス] テキスト ボックスに「[2000:ab1:0:2:f333:c432:55f6:d7ee]」と入力します。
データベースがデフォルト (1433) 以外のポートで接続を待ち受ける場合は、インスタンスにポート番号を含める必要があります。たとえば、SQL Server インスタンスが basset\spatialであり、ポート 61000 で接続を待ち受ける場合には、[インスタンス] テキスト ボックスに「basset\spatial,61000」と入力します。
たとえば、Azure SQL Database のインスタンス名が cloudy4u.database.windows.net の場合、[インスタンス] テキスト ボックスに「cloudy4u.database.windows.net」と入力します。terra\gis という名前の SQL Server インスタンスを使用している場合、[サービス] テキスト ボックスに「terra\gis」と入力します。
注意:
高可用性 SQL Server データベースに接続するには、[インスタンス] テキスト ボックスに追加情報を入力する必要があります。
- データベースに接続する際に使用する認証タイプとして、 [データベース認証] または [オペレーティング システム認証] のいずれかを選択します。
- [オペレーティング システム認証] を選択した場合、ユーザー名とパスワードを入力する必要はありません。接続は、オペレーティング システムへのログインに使用されたログイン名とパスワードを使用して確立されます。オペレーティング システムに使用するログイン情報がデータベースへのログインでは無効である場合、接続は確立されません。
[データベース認証] を選択した場合、有効なデータベース ユーザー名とパスワードをそれぞれ [ユーザー名] と [パスワード] テキスト ボックスに指定する必要があります。ユーザー名には、最大で 30 文字まで入力できます。
ログイン情報を接続の一部として保存しない場合は、[ユーザー名/パスワードの保存] をオフにします。これは、データベースのセキュリティを維持するのに役立ちます。ただし、オフにした場合、デスクトップ クライアントからの接続時にユーザー名とパスワードを入力するよう求められます。
注意:
- データベースへのアクセス権を ArcGIS サービスに付与する接続ファイルの場合やこの接続ファイルを経由してアクセスするデータを ArcGIS Desktop で検索する場合は、[ユーザー名とパスワードを保存する] チェックボックスをオンにする必要があります。
- ArcGIS の外部では、特殊文字を含むユーザー名を SQL Server に作成することができます。これらのユーザー名を使用する際は、常に区切り文字が必要となります。ArcGIS は SQL Server に渡すユーザー名に自動的に区切り文字を追加するため、ユーザー名に区切り文字を含める必要はありません。たとえば、ユーザー名が map.user の場合は、[ユーザー名] テキスト ボックスに「map.user」と入力します。「"map.user"」と入力する必要はありません。通常の識別子と区切り文字が追加された識別子の詳細については、SQL Server のドキュメントをご参照ください。
- [データベース] テキスト ボックスで、SQL Server または Azure SQL Database インスタンスで接続する特定のデータベースの名前を入力または選択します。データベース名の長さは 31 文字以下に制限されています。
ヒント:
SQL Server インスタンスへ接続する場合にはデータベース名の入力は任意です。ただし、入力が不要なのは、SQL Server インスタンスのデフォルトのデータベースとして割り当てられているデータベースへ接続する場合に限られます。Azure SQL Database へ接続する場合には、データベース名を入力する必要があります。
以下の例では、データベース認証を使用して SQL Server インスタンス spatialdata 上のデータベース server1\ss08r2 に接続しています。
- [OK] をクリックして接続します。
ファイルが \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog に作成されます。
接続を別の場所に移動することができます。ただし、接続ファイルを置くディレクトリに対して、接続する必要のあるユーザーおよびアプリケーションが読み取り権限を持っていることを確認してください。
この接続からのデータを、ジオプロセシングやジオコード サービスなどのサービスのソースとして使用する場合は、ネットワーク上の共有の場所に接続ファイルを置くことが必要な場合があります。接続ファイルの共有の詳細については、「データを ArcGIS Server でアクセス可能にする」をご参照ください。
ArcGIS Server からの接続
SQL Server と ArcGIS Server が別々のコンピューター上で実行されている場合は、Microsoft ODBC Driver for SQL Server を ArcGIS Server サイトのすべてのコンピューターにインストールします。ただし、まず、使用している SQL Server インスタンスがリモート接続を受け入れるように構成されていることを確認してください。
接続可能にするためのインスタンスの構成
SQL Server インスタンスは、デフォルトでは他のコンピューターからの接続を許可するように構成されていません。SQL Server の新しいインストールが存在する場合、SQL Server サービスが実行され、正しいポートでリスニングしていることを確認してください。詳細については、Microsoft SQL Server のドキュメントをご参照ください。
Microsoft ODBC Driver for SQL Server のインストール
ArcGIS Server と SQL Server が別々のコンピューターにインストールされている場合は、64 ビット Microsoft ODBC Driver for SQL Server を ArcGIS Server サイトの各コンピューターにインストールする必要があります。ドライバーは、Microsoft Download Center から取得してインストールできます。必ず、Microsoft サイトの接続先の SQL Server のバージョンでサポート対象となっている ArcGIS Server ODBC ドライバーを取得してください。
注意:
ArcGIS Server の Ubuntu からサポートされているバージョンの SQL Server に接続する場合は、ODBC Driver に加え、Microsoft unixodbc-dev パッケージをすべての ArcGIS Server コンピューターにインストールする必要があります。
データベースの登録
ArcGIS Server で公開するサービスが、SQL Server のデータベースまたはジオデータベースのデータにアクセスする場合、データベースを ArcGIS Server サイトに登録する必要があります。詳しい手順については、ArcGIS Pro ヘルプの「登録済みデータ ストアの管理」、「Server Manager を使用したデータの ArcGIS Server への登録」または ArcGIS Enterprise ポータル ユーザー ヘルプの「アイテムの追加」をご参照ください。