ユーザ スキーマ ジオデータベースの管理

SDE ユーザ以外のスキーマで格納されたジオデータベースは、SDE マスタ ジオデータベースに依存していながら、SDE マスタ ジオデータベースとは異なる管理が実行されます。このトピックでは、マスタ ジオデータベースとは異なる手順で行われる管理タスクの一部を説明します。

ジオデータベースを所有するユーザは、ArcSDE 管理者です。つまり、ジオデータベースが格納されているスキーマを所有するユーザは、SDE マスタ ジオデータベースの SDE ユーザに相当し、ユーザ スキーマ ジオデータベースの管理タスクを実行するユーザになります。

ヒントヒント:

他のユーザ スキーマ ジオデータベースの情報については、「ユーザ スキーマ ジオデータベースへの接続」および「ユーザのスキーマからのジオデータベースの削除」をご参照ください。

ユーザ スキーマのジオデータベースの起動と停止

SDE スキーマ以外のスキーマに格納されたジオデータベースは、マスタ ジオデータベースに依存しています。マスタ ジオデータベースを起動または停止すると、関連するすべてのジオデータベースが自動的に起動または停止します。ユーザ スキーマのジオデータベースを単体で起動しようとすると、次のようなエラーになります。

init_DB DB_instance_open_as_dba: -93
DBMS error code: 1017
ORA-01017: invalid username/password; logon denied

サーバ上のジオデータベースの一覧表示

サーバ上で実行されているジオデータベースを確認するには、sdemon -o info コマンドで-I オプションを使用します。このオプションは、サーバ上に存在するさまざまなジオデータベースに関する情報を返します。

sdemon –o info –I instances

Instance       	Created	               Id

SDE        Thu Oct 28 16:30:20 2004        0
MAP	  Mon Feb 27 11:18:04 2006        1
ヒントヒント:

SQL を使用して INSTANCES システム テーブルを検索し、ユーザ スキーマ ジオデータベースに関する情報を取得できます。

sdemon コマンドの詳細については、『ArcSDE コマンド リファレンス』をご参照ください。

ユーザ スキーマに格納されたジオデータベースでのストアド プロシージャの作成

ジオデータベースはそれぞれ、ジオデータベースの作成時に ArcSDE 管理者のスキーマに自動的に作成されるストアド プロシージャ パッケージを独自に保持します。

また、SQL*Plus にスキーマ名を指定すれば、ジオデータベースに個別のパッケージを作成することができます。たとえば、Thor ユーザのスキーマに dbtune_util パッケージを作成するには、SQL プロンプトで次のコマンドを実行します。

@dbtune_util.sps THOR

ユーザ スキーマ ジオデータベースへのデータの読み込み

SDE ユーザ以外のユーザのスキーマに格納されたジオデータベースにデータを読み込む方法は、SDE マスタ ジオデータベースにデータを読み込む方法と同じで、ArcGIS Desktop(推奨方法)または ArcSDE コマンドを使用します。

注意注意:

ArcGIS Desktop から同じ Oracle データベースの 2 つのジオデータベースに同じユーザとして接続する場合、ジオデータベース間でデータセットのコピーおよび貼り付けを行った場合は失敗することに注意してください。これは、同じユーザのスキーマに格納されているためにデータセットが一意の完全修飾名を持たないためです。

テーブルを所有するスキーマが異なっている限り、別のジオデータベースに存在するテーブルと同じ名前のテーブルでも、ジオデータベースに読み込むことができます。

テーブルとレイヤの登録

ジオデータベースを所有するユーザには、他のジオデータベースに SQL または ArcSDE コマンドを使用してテーブルを作成することが許可されますが、そのテーブルを登録できるのは 1 つのジオデータベースに限られます。

テーブルがすでに別のスキーマに登録されている場合には、SE_TABLE_REGISTERED_OUTSIDE_SCHEMA エラーが返されます。

次に、SQL を使用して作成したテーブル mytable を ArcSDE に登録する例を説明します。

sdetable –o register –t mytable –i 2299:schemaname –u user –p passwd

この例では、sdelayer コマンドを使用してレイヤ mylayer を作成します。

sdelayer –o create –l mylayer,shape –i port:schemaname –u user -p passwd

sdetable および sdelayer コマンドの使用の詳細については、『ArcSDE コマンド リファレンス』をご参照ください。

ユーザ スキーマに格納されたジオデータベースのバックアップ

スキーマ ジオデータベースのすべてのテーブルがスキーマの所有者によって所有されていて(つまり、そのジオデータベースで他のユーザがデータを作成しておらず)、ジオデータベースの所有者が他のジオデータベースでデータを所有しておらず、ST_Geometry 格納タイプを使用しない場合には、ジオデータベースの所有者のスキーマでバックアップを実行することができます。

ほとんどの場合、Oracle システム全体のバックアップを実行することをお勧めします。ユーザのデータが同じ Oracle データベースの複数のジオデータベースに分散している場合、または ST_Geometry 格納タイプ(ArcGIS 9.3 以降では ArcSDE ジオデータベースのデフォルト格納タイプ)を使用している場合、Oracle システム全体のバックアップが必要です。それは、ユーザのスキーマのジオデータベースがデータベースの他のスキーマの情報に依存しているため、ジオデータベースを含む単一のスキーマのバックアップだけでは不十分だからです。データベースのバックアップの詳細については、Oracle のマニュアルをご参照ください。


3/6/2012