演習 11: データベース サーバからジオデータベースをデタッチ
このトピックは、ArcGIS for Desktop Standard および ArcGIS for Desktop Advanced にのみ該当します。
ジオデータベースをデータベース間で移動させるには、データベース サーバからデタッチし、ネットワーク経由でまたは転送メディア(USB メモリなど)にデータベース ファイル(*.mdf ファイル)をコピーして、コピー先のサーバに貼り付けます。この操作が済んだ時点で、ジオデータベースを 2 つめのデータベース サーバにアタッチできます。
この操作を実行するケースとしては、以下のような例が考えられます。
- デスクトップ コンピュータ上のデータベース サーバのジオデータベースに格納されたデータを使用しており、ジオデータベースをデータ収集用に屋外に持ち出す際は、デスクトップ コンピュータ上のデータベース サーバからジオデータベースをデタッチし、データベース ファイルをラップトップに転送して、ラップトップ上のデータベース サーバにジオデータベースをアタッチすることができます。
- ジオデータベースの所有権を譲渡する場合(たとえば、従業員が会社を辞めるとき)は、元社員のコンピュータ上のデータベース サーバからジオデータベースを移動し、新しい所有者のコンピュータにコピーして、そのコンピュータにあるデータベース サーバにアタッチすることができます。
- コンサルタントにデータセットの収集や作成を代行してもらう際は、SQL Server Express のジオデータベースへのデータ配信を要求できます。その場合、コンサルタントからファイルが送付されたら、データベース サーバにアタッチすることができます。
データベース サーバからジオデータベースをデタッチしても、データベース ファイルは削除されません。ただし、SQL Server Express インスタンスからは、データベースへの参照が削除されます。
データベース サーバ間でジオデータベースを共有する際は、誰がデータを所有しているか、また誰がデータ操作権限を持っているかを確認しておくことが重要です。SQL Server Express の ArcSDE ジオデータベースで使用されるログインは、Windows 認証を使用するため、ローカルの Windows ログインを使用してしまうと、新しいコンピュータにジオデータベースを転送するときに、その新しいコンピュータ上に所定のユーザが存在しないことになります。同様に、ネットワーク ログインを使用して、ネットワーク外部のデータベース サーバにジオデータベースを転送すると、所定のログインが存在しないことになります。
この問題にどのように対応するかはワークフローによって異なります。ジオデータベースを複数のサイトに移動する予定のあることがあらかじめわかっている場合は、dbo ユーザとしてログインしたうえで、すべてのデータをジオデータベース内に作成することをお勧めします。データベース サーバ内には dbo ユーザとスキーマが常に存在しているため、別のネットワーク上のデータベース サーバにジオデータベースを移動する場合でも、dbo としてログインし、データベース サーバに新規のユーザを追加して、データに対する権限を付与できます。
ジオデータベースの移動が必要になることを予想しておらず、移動先データベース サーバ上にデータ所有者が存在していない場合は、dbo ユーザとしてログインして次の一連の手順のいずれかを実行することができます。
- 移動先のデータベース サーバに新規ユーザを追加します。
- データ所有権の譲渡先となるユーザに、ジオデータベースに対する読み取り/書き込みアクセス権限またはそれよりも高度なアクセス権限を付与します。これらの権限をジオデータベース レベルで付与されたユーザは、ジオデータベース内のすべてのデータにアクセスできるようになります。
- 所有権を譲渡するユーザにジオデータベースにログインしてもらい、読み取り/書き込み権限も持つ新しいジオデータベースにデータをコピーしてもらうか、またはデータをコピーして同じジオデータベース内の適切な場所に貼り付け、貼り付けたデータセットおよび列に新しい名前を付けます。
または
- 移動先のデータベース サーバ上に別のジオデータベースを作成します。
- 新しいジオデータベースにデータをコピーします。 注意:
この時点で dbo が、2 つめのジオデータベース内のすべてのデータセットの所有者になります。
- 移動先のデータベース サーバに新規ユーザを追加します。
- これらのユーザに、データセットに対するアクセス権限を付与します。
ジオデータベースのデタッチ
buildings08 ジオデータベースを PC 上のデータベース サーバからラップトップ上のデータベース サーバに移動させ、それを屋外に持ち出して交通量データを収集する場合を考えます。分散ジオデータベースを使用して、ラップトップ上のデータベース サーバのジオデータベースにデータを複製するか、あるいは PC 上のデータベース サーバからジオデータベースをデタッチし、ラップトップ上のハード ディスクに移動して、ラップトップのデータベース サーバにアタッチすることができます。
データベース サーバから buildings ジオデータベースをデタッチするには、次の手順を実行します。
- 自分自身の Windows ログインでコンピュータにログインします。
- [スタート] → [すべてのプログラム] → [ArcGIS] → [ArcCatalog 10.1] をクリックして、ArcCatalogを起動します。
- カタログ ツリーで [Database Servers] ノードを展開し、データベース サーバに接続します。ただし、buildings08 ジオデータベースには接続しないでください。
-
buildings08 ジオデータベースを右クリックし、[管理] をポイントして、[デタッチ] をクリックします。
注意:
この時点でジオデータベースに接続している他のユーザがいればすべて切断され、ジオデータベースのデタッチが可能になります。データベース サーバからデタッチする前に、他のユーザがジオデータベースからログアウトしたことを確認してください。
- [デタッチの確認] ダイアログ ボックスが表示されたら、データベース ファイルの場所を記録しておきます。今後データベースを別の場所にコピーしたりデータベースを再びアタッチしたりするときのために、データベース ファイルの場所がわかっている必要があるためです。
- [デタッチの確認] ダイアログ ボックスで、[はい] をクリックします。
以上の操作で、Windows エクスプローラを開き、buildings08.mdf の場所に移動して、そのファイルをメディアにコピーするかまたはネットワーク経由でコピーして、別のコンピュータに転送することができました。
ジオデータベースのアタッチの手順については、「演習 3」または「データベース サーバへのジオデータベースのアタッチ」をご参照ください。
この演習では、ジオデータベースをデータベース サーバからデタッチして、別のデータベース サーバに移動させることができました。