ArcGIS から、ジオデータベースを含むデータベースなどの Microsoft SQL Server データベースに接続するために必要な手順を以下にまとめます。
- リモート コンピューターからの接続を許可するように、SQL Server インスタンスを構成します。
- ArcGIS クライアント コンピューターに Microsoft ODBC ドライバーをインストールします。
- データベース接続を作成します。
- SQL Server データベース内のデータを参照する ArcGIS Server Web サービスを公開するには、データベース接続ファイルを ArcGIS Server サイトに登録します。
接続可能にするためのインスタンスの構成
SQL Server インスタンスは、デフォルトでは他のコンピューターからの接続を許可するように構成されていません。 SQL Server の新しいインストールが存在する場合、SQL Server サービスが実行され、正しいポートでリスニングしていることを確認してください。 詳細については、Microsoft SQL Server のドキュメントをご参照ください。
データベース管理者でない場合は、接続時にインスタンスが接続を受け入れないことを示すエラーを受信したら、データベース管理者にお問い合わせください。
暗号化された接続を使用するには、SQL Server およびクライアント コンピューターの追加構成が必要です。
Microsoft ODBC Driver for SQL Server のインストール
64 ビット Microsoft ODBC Driver for SQL Server は、Microsoft Download Center または My Esri から取得します。 必ず、接続先の SQL Server のバージョンでサポート対象となっている Microsoft ODBC ドライバーを取得してください。 ArcGIS Pro と ArcGIS Server がインストールされているすべてのコンピューターにドライバーをインストールします。
ArcGIS クライアントが動作するコンピューター上にソフトウェアをインストールする権限がない場合は、IT 部門に Microsoft ODBC ドライバーをインストールおよび構成してもらう必要があります。
注意:
ArcGIS Server と SQL Server が同じサーバーにインストールされている場合、そのコンピューターに別々の ODBC ドライバーをインストールする必要はありません。
Ubuntu の ArcGIS Server からサポートされているバージョンの SQL Server に接続する場合は、ODBC Driver に加え、Microsoft unixodbc-dev パッケージをすべての ArcGIS Server コンピューターにインストールする必要があります。
データベースへの接続
以下に示すように、ArcGIS Pro の [データベース接続] ダイアログ ボックスを使用して、データベースに接続できます。
または、ArcGIS Pro で [データベース接続の作成 (Create Database Connection)] ジオプロセシング ツールを実行するか、Python を使用して ArcGIS Server コンピューターから [データベース接続の作成 (Create Database Connection)] コマンドを実行して、データベースに接続するデータベース接続ファイル (*.sde) を作成することができます。
注意:
接続に Microsoft Azure Active Directory 認証が使用される場合、[データベース接続の作成 (Create Database Connection)] ジオプロセシング ツールは使用できません。
データベース接続ファイルを ArcGIS Server で使用するには、以下が必要です。
- データベース認証でパスワードベースの Microsoft Azure Active Directory のユーザー情報または Azure Active Directory - Universal with MFA (Multi-Factor Authentication) のユーザー名を接続ファイルに保存する必要があります。
注意:
Azure Active Directory - Universal with MFA を使用する場合、データベース接続ファイルに保存されているユーザー名と ArcGIS Server アカウントに使用されるネットワーク ログインは、同じネットワーク ドメインに存在する必要があります。
- オペレーティング システム認証を使用して 接続する場合は、SQL Server が ArcGIS Server アカウントを認証できることを確認します。
ヒント:
接続に使用されるアカウントに、アカウントがアクセスする必要があるデータに対する適切な権限が付与されていることを確認します。 接続でオペレーティング システム認証を使用し、この接続を使用して Web サービスを公開する場合、ArcGIS Server アカウントに Web サービスに含まれるデータに対する適切な権限が付与されていることを確認します。 詳細については、「SQL Server でのジオデータベースの権限」および「ArcGIS で SQL Server データベースを使用するための権限」をご参照ください。
ArcGIS Pro の [データベース接続] ダイアログ ボックスから SQL Server データベースに接続するには、次の手順に従います。
- ArcGIS Pro で [カタログ] ウィンドウを開きます。
- [データベース] を右クリックして [新しいデータベース コネクション] をクリックします。
- [データベース プラットフォーム] ドロップダウン リストで [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 または Azure SQL Managed Instance のインスタンス名が cloudy4u.database.windows.net の場合、[インスタンス] テキスト ボックスに「cloudy4u.database.windows.net」と入力します。 terra\gis という名前の SQL Server インスタンスを使用している場合、[インスタンス] テキスト ボックスに「terra\gis」と入力します。 Amazon Relational Database Service (RDS) for SQL Server のインスタンス名が rdssqlserver.abc123 で、Amazon Web Services のリージョン us-west-2 に配置されている場合は、[インスタンス] テキスト ボックスに「rdssqlserver.abc123.us-west-2.rds.amazonaws.com」と入力します。
[インスタンス] テキスト ボックスには、暗号化された接続および高可用性 SQL Server データベースへの接続のための追加テキストが必要です。
- データベースに接続する際に使用する認証タイプを選択します。
Azure Active Directory オプションは、Azure SQL Database または Azure SQL Managed Instance に接続している場合のみサポートされます。
- [オペレーティング システム認証] - ユーザー名とパスワードを入力する必要はありません。接続は、オペレーティング システムへのサイン インに使用されたログイン名とパスワードを使用して確立されます。 オペレーティング システムに使用するログイン情報がデータベースへのログインでは無効である場合、接続は確立されません。
[データベース認証] - 有効なデータベース ユーザー名とパスワードをそれぞれ [ユーザー名] と [パスワード] テキスト ボックスに指定する必要があります。 ユーザー名には、最大で 30 文字まで入力できます。
- [Azure Active Directory - Universal with MFA] - Azure Active Directory のユーザー名を指定する必要がありますが、パスワードは必要ありません。 接続するときに、テキスト メッセージ、電子メール、または MFA デバイスでコードが送信されます。または、認証に指紋スキャンを使用できます。 この認証プロセスの 2 つ目の部分は、お使いのネットワークと認証プロトコルの構成方法によって異なります。
- [Azure Active Directory - Password] - 有効な Azure Active Directory のユーザー名とパスワードをそれぞれ [ユーザー名] と [パスワード] テキスト ボックスに指定する必要があります。 ユーザー名には、最大で 30 文字まで入力できます。
注意:
- データベース認証または Azure Active Directory 認証を使用してデータベースへのアクセス権を ArcGIS Web サービスに付与する接続ファイルの場合や、この接続ファイルを経由してアクセスするデータを ArcGIS Pro で検索する必要がある場合は、[ユーザー名とパスワードを保存する] チェックボックスをオンにする必要があります。
- ArcGIS の外部では、特殊文字を含むユーザー名を SQL Server に作成することができます。 これらのユーザー名を使用する際は、常に区切り文字が必要となります。 ArcGIS は SQL Server に渡すユーザー名に自動的に区切り文字を追加するため、ユーザー名に区切り文字を含める必要はありません。 たとえば、ユーザー名が map.user である場合は、[ユーザー名] テキスト ボックスに「map.user」と入力します。「"map.user"」と入力する必要はありません。 通常の識別子と区切り文字が追加された識別子の詳細については、SQL Server のドキュメントをご参照ください。
- [データベース] テキスト ボックスで、SQL Server インスタンスまたは Azure SQL Managed Instance で接続する特定のデータベースの名前を選択します。その他すべてのデータベース サービスの場合は、データベースの名前を入力します。
データベース名の長さは 31 文字以下に制限されています。
- [OK] をクリックして、接続ファイルを作成します。
データベース接続が [カタログ] ウィンドウの [データベース] に表示され、接続ファイル (*.sde) が ArcGIS Pro のプロジェクト ディレクトリに作成されます。
ファイルの名前を変更するには、[カタログ] ウィンドウで新しい名前を入力し、Enter キーを押します。
ArcGIS Server へのデータベースの登録
ArcGIS Server サイトでデータにアクセスできるようにするには、作成したデータベース接続ファイルを使用して、ArcGIS Pro に登録済みデータ ストアを追加するか、ポータルにデータ ストア アイテムを追加します。