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

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

ジオデータベースを所有するユーザは、ジオデータベース管理者です。つまり、ジオデータベースが格納されているスキーマを所有するユーザは、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 を使用して sde.INSTANCES システム テーブルを検索し、ユーザ スキーマ ジオデータベースに関する情報を取得できます。

sdemon コマンドを入手するには、Esri Customer Care ポータルから ArcSDE アプリケーション サーバのインストールをダウンロードします。このインストールには、『ArcSDE コマンド リファレンス』が付属しており、この中に sdemon の使用法が記載されています。

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

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

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

@dbtune_util.sps THOR

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

SDE ユーザ以外のユーザのスキーマに格納されたジオデータベースにデータを読み込む方法は、SDE マスタ ジオデータベースにデータを読み込む方法と同じで、ArcGIS for Desktop ツールを使用します。

ただし、このジオデータベースにデータを読み込むことができるのは、スキーマ所有者だけです。その他すべてのユーザは、sde マスタ ジオデータベースまたはそのユーザ自身のジオデータベースにデータを読み込む必要があります。たとえば、user1 がスキーマ ジオデータベースを所有している場合、user1 は user1 ジオデータベースにのみデータを作成できます。user2 がスキーマ ジオデータベースを所有していない場合、user2 は sde マスタ ジオデータベースにのみデータを作成できます。ユーザが同じ Oracle データベースの複数のジオデータベース内にデータを所有する場合、ジオデータベースをアップグレードすることはできず、ユーザ スキーマ ジオデータベースは削除できません。アップグレードするには、事前にその他のジオデータベースからデータを削除する必要があります。

レガシーレガシー:

その他のユーザが所有するデータが含まれている既存のユーザスキーマ ジオデータベース(ArcGIS 10 以前に作成したジオデータベース)は、アップグレードが可能です。それらのデータ所有者は、引き続き新しいデータを作成したり、既存のデータを使用したりできます。たとえば、user1 が ArcGIS 9.2 でジオデータベースを作成し、user2 が ArcGIS 10 以前のクライアントでそのジオデータベース内にデータを作成した場合、user1 のジオデータベースは 10.1 にアップグレードされますが、user2 の既存のデータにはアクセス可能で、user1 のジオデータベース内で引き続きデータを作成することができます。ただし、可能な場合は、sde マスタ ジオデータベースかユーザ自身のスキーマのジオデータベースにデータを移動することをお勧めします。

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

テーブルの登録

SQL またはサードパーティ アプリケーションを使用してデータを作成し、そのテーブルをジオデータベースに登録できます。ただし、テーブルを登録できるジオデータベースは 1 つだけです。テーブルがすでに別のスキーマに登録されている場合には、SE_TABLE_REGISTERED_OUTSIDE_SCHEMA エラーが返されます。また、前述したように、ユーザは Oracle データベース内にある 1 つのジオデータベースにのみデータを登録できます。

テーブルをユーザ スキーマ ジオデータベースに登録するには、ArcGIS for Desktop で Oracle データベースに接続し、[ジオデータベース接続プロパティ] ダイアログ ボックスを開いてから、ユーザ スキーマ ジオデータベースへの接続を変更します。詳細については、「ユーザ スキーマ ジオデータベースへの接続」をご参照ください。

テーブル所有者としてユーザ スキーマ ジオデータベースに接続したら、カタログ ツリーのデータベース接続の下にあるテーブルを右クリックして、[管理] をポイントしてから [ジオデータベースに登録] をクリックします。

ArcGIS は、ObjectID に使用する適切な列(NULL を含まない整数列)が存在するかどうかや、空間テーブルを登録している場合は、エンティティ タイプ、空間参照、空間範囲を検出します。ArcGIS が検出できない場合は、この情報を入力するように求められます。詳細については、「ジオデータベースへのテーブルの登録」をご参照ください。

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

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

9/14/2013