SQL Server でのマルチ データベースからシングル データベース ジオデータベースへの移行
SQL Server でマルチ データベース モデルからシングル データベース モデルに移行するには、次の 3 つの方法があります。
- すべてのユーザ データをマスタ sde データベースに移動します。
- 1 つの新しいシングルモデル ジオデータベースを作成し、すべてのデータをそこに移動します。
- 複数のシングルモデル ジオデータベースを作成し、それぞれのユーザ データベースから対応する新規作成したスタンドアロン ジオデータベースにデータを移動します。
すべてのユーザ データを既存の sde マスタ データベースに移動する
データを別々のデータベースに保持する必要がない場合、既存のデータをマスタ sde データベースまたは新しいシングルモデル ジオデータベースに移動できます。
これは、次の場合に行う可能性があります。
- 最初のジオデータベースの作成が ArcSDE 9.0 の以前のリリースで、マルチ空間ジオデータベース モデルが唯一の選択肢だった場合。
- 結合とリレートが行えるように、すべてのデータを同じジオデータベースに格納する必要がある場合。
- ユーザがこれまで使用してきた接続情報をこれからも使用したい場合。
データを sde データベースに移動するには、次の一連の手順に従います。
差分テーブルからベース テーブルへ編集データを移行し、バージョンを削除します。
- すべてのバージョン対応編集を DEFAULT バージョンへリコンサイルおよびポストします。
- その他すべてのジオデータベース ユーザがシステムを使用していない時間帯に、ジオデータベースを圧縮します。
- 名前付きバージョンを削除します。
データ所有者がデータを作成できるよう sde データベースをセットアップします。
-
ユーザ データベースにデータを所有しているユーザごとに、sde データベース内にスキーマを作成します。
スキーマの名前はユーザと同じにする必要があります。
- sde データベースにデータを作成できるように、ユーザに権限を付与します。
データを移動します。
sde ジオデータベースのデータの所有者は、データの移動時に sde ジオデータベースにログインしていたユーザです。そのため、同じユーザにデータを所有させる場合は、各ユーザが接続して、自分が所有するデータを移動する必要があります。
- データの所有者は、ArcGIS for Desktop から sde データベースおよびユーザ データベースにログインする必要があります。
- データ所有者は、データの移動に次のいずれかの方法を使用できます。
- sde ジオデータベースに接続し、ユーザ データベースからデータをインポートします。
- ユーザ データベースに接続し、sde データベースにデータをエクスポートします。
- ユーザ データベースからデータをコピーし、それを sde データベースに貼り付けます。
- データを移動したら、データ所有者はデータに対する権限を他のユーザに再び付与する必要があります。
すべてのデータを新しい 1 つのシングルモデル ジオデータベースに移動する
データベースを新規に作成して、データを別々のデータベースに保持する必要がない場合は、シングルモデル ジオデータベースを作成して、すべてのデータをそこに移動することができます。
これは、次の場合に行う可能性があります。
- 最初のジオデータベースの作成が ArcSDE 9.0 の以前のリリースで、マルチ空間ジオデータベース モデルが唯一の選択肢だった場合。
- 結合とリレートが行えるように、すべてのデータを同じジオデータベースに格納する必要がある場合。
- ユーザが新しいジオデータベースへの接続ファイルを新規作成できる場合。
新しいシングルモデル ジオデータベースを作成し、そこにデータを移動するには、次の一連の手順に従います。
差分テーブルからベース テーブルへ編集データを移行し、バージョンを削除します。
- すべてのバージョン対応編集を DEFAULT バージョンへリコンサイルおよびポストします。
- その他すべてのジオデータベース ユーザがシステムを使用していない時間帯に、ジオデータベースを圧縮します。
- 名前付きバージョンを削除します。
データを移動するジオデータベースを作成し、ユーザを作成し、ユーザ スキーマを設定し、データベース権限を付与します。
- SQL Server に新しいデータベースを作成します。すべてのデータを保持できるように、適切なサイズに設定します。
- sde スキーマのジオデータベースを使用する場合、sde ユーザと対応するスキーマを新しいデータベース内に作成します。ヒント:
異なる SQL Server インスタンスにデータベースを作成した場合は、まず sde ログインをその SQL Server インスタンスに追加する必要があります。
- sde スキーマのジオデータベースを使用している場合、sde ユーザに新しいデータベースに対する CREATE FUNCTION、CREATE PROCEDURE、CREATE TABLE、および CREATE VIEW の各権限を付与します。
- その他の非管理ユーザおよびロールを新しいデータベースに追加します。
- データを所有することになるユーザのためのスキーマをデータベースに作成します。
スキーマの名前はユーザと同じにする必要があります。
- 新しいデータベース内にデータを作成できるように、ユーザに権限を付与します。
- ArcGIS for Desktop から新しいデータベースへの接続を作成します。
ジオデータベースを sde ユーザのスキーマに格納する場合は sde ユーザとして、ジオデータベースを dbo スキーマに格納する場合は sysadmin 固定サーバ ロールのユーザとして接続します。
- [エンタープライズ ジオデータベースの有効化(Enable Enterprise Geodatabase)] ジオプロセシング ツールや Python スクリプトを使用して、新しいデータベース内にジオデータベースを作成します。
データを移動します。
データを所有するのは、データの移動時に新しいジオデータベースにログインしているユーザです。
- 各データ所有者は、ArcGIS for Desktop から以前のジオデータベースと新しいジオデータベースに接続できる必要があります。
- データ所有者には、データを移動するために次の 3 つの方法があります。
- 新しいジオデータベースに接続し、以前のジオデータベースからデータをインポートします。
- 以前のジオデータベースに接続し、新しいジオデータベースにデータをエクスポートします。
- 以前のジオデータベースに接続してデータをコピーしてから、新しいジオデータベースに接続して、そこにデータを貼り付けます。
- データを移動したら、データ所有者はデータに対する権限を他のユーザに再び付与する必要があります。
- その他すべてのユーザは新しいジオデータベースへの接続を新たに作成する必要があります。また、既存の ArcMap ドキュメント(MXD および MSD)を新しいデータ ソースにマップする必要があります。
各ユーザ データベースをそれぞれのシングルモデル ジオデータベースに移動する
これまでユーザ データベースを使用して複数の部門またはプロジェクトのデータをグループ化していた場合、各ユーザ データベースから個別のシングルモデル ジオデータベースにデータを移動することができます。
これは、次の場合に行う可能性があります。
- ユーザ データベースを異なる種類のデータをグループ化するために使用していて、この振舞いを維持したい場合。
- 同じジオデータベース内に配置できるデータセット間に対して結合とリレートを作成すればよい場合。
- ユーザが新しいジオデータベースへの接続ファイルを新規作成できる場合。
複数のシングルモデル ジオデータベースを作成し、各ユーザ データベースから新しいジオデータベースにデータを移動するには、次の一連の手順に従います。
差分テーブルからベース テーブルへ編集データを移行し、バージョンを削除します。
- すべてのバージョン対応編集を DEFAULT バージョンへリコンサイルおよびポストします。
- その他すべてのジオデータベース ユーザがシステムを使用していない時間帯に、ジオデータベースを圧縮します。
- 名前付きバージョンを削除します。
これまでのユーザ データベースごとに 1 つのジオデータベースを作成して、ユーザを作成し、ユーザ スキーマを設定し、権限を付与します。
- マルチモデル ジオデータベースのユーザ データベースごとに、1 つの新しいデータベースを SQL Server 内に作成します。移動するデータを格納できるように、各データベースのサイズを適切に設定します。
- ジオデータベースを sde ユーザのスキーマに格納したい場合は、sde ユーザと対応するスキーマをデータベース内に作成します。ヒント:
異なる SQL Server インスタンスにデータベースを作成した場合は、まず sde ログインをその SQL Server インスタンスに追加する必要があります。
- sde ユーザに、sde スキーマを使用する各データベースに対する CREATE FUNCTION、CREATE PROCEDURE、CREATE TABLE、および CREATE VIEW の各権限を付与します。
- その他の非管理ユーザおよびロールを新しいそれぞれのデータベースに追加します。
- データを所有することになるユーザのためのスキーマをそれぞれのデータベースに作成します。
スキーマの名前はユーザと同じにする必要があります。
- 該当するデータベース内にデータを作成できるように、ユーザに権限を付与します。
- ArcGIS for Desktop から新しいそれぞれのデータベースへの接続を作成します。
ジオデータベースを sde ユーザのスキーマに格納する場合は sde ユーザとして、ジオデータベースを dbo スキーマに格納する場合は sysadmin 固定サーバ ロールのユーザとして接続します。
- [エンタープライズ ジオデータベースの有効化(Enable Enterprise Geodatabase)] ジオプロセシング ツールや Python スクリプトを使用して、新しいデータベース内にジオデータベースを作成します。新しいデータベースごとに、この手順を繰り返します。
データを移動します。
データを所有するのは、データの移動時にジオデータベースにログインしているユーザです。
- 各データ所有者は、ArcGIS for Desktop から以前のジオデータベースと新しいジオデータベースに接続できる必要があります。
- データ所有者には、データを移動するために次の 3 つの方法があります。
- 新しいジオデータベースに接続し、以前のジオデータベースからデータをインポートします。
- 以前のジオデータベースに接続し、新しいジオデータベースにデータをエクスポートします。
- 以前のジオデータベースに接続してデータをコピーしてから、新しいジオデータベースに接続して、そこにデータを貼り付けます。
- データを移動したら、データ所有者はデータに対する権限を他のユーザに再び付与する必要があります。
- その他すべてのユーザは新しいジオデータベースへの接続を新たに作成する必要があります。また、既存の ArcMap ドキュメント(MXD および MSD)を新しいデータ ソースにマップする必要があります。