Linux または UNIX での DB2 データベースの作成
ジオデータベースは、データベースに格納されたテーブルとプロシージャの集合です。したがって、ジオデータベースを作成する前にデータベースを作成する必要があります。
ArcSDE では DB2 用に DB2 グローバル一時表(DECLARE GLOBAL TEMPORARY TABLE)を使用する必要があります。DB2 のドキュメントで説明されているように、グローバル一時表を宣言するには、SYSADMIN または DBADM 権限か、USER TEMPORARY 表スペースに対する USE 権限が必要です。USER TEMPORARY 表スペースを作成するには、DB2 コントロール センターを使用するか、またはコマンド ラインから CREATE USER TEMPORARY TABLESPACE コマンドを使用します。USER TEMPORARY 表スペースは必ず SMS(system-managed space)として作成してください。
USER TEMPORARY 表スペースには SMS を使用する必要がありますが、ユーザ データの格納には DMS(Database-managed space)表スペースを使用する必要があります。
表スペースの格納にはさまざまなオプションがあります。詳細については、DB2 インフォメーション センターのトピック「Automatic storage table spaces」(自動ストレージの表スペース)をご参照ください。
次の手順には、DB2 データベースを作成し、USER TEMPORARY 表スペースを作成して、PUBLIC に対しすべての表スペースの USE 権限を付与するサンプル スクリプトが含まれます。
-
データベースを作成するスクリプトを作成します。
メモ:
ジオデータベースが格納されるデータベースの名前には、特殊文字は使用できません。
次にスクリプトの例を示します。データベース名、パスワード名、コンテナ名などの変数とパスを、各自のサイトで必要な情報に置き換えて利用できます。
db2 -tvf <script.clp> FORCE APPLICATION ALL; DB2STOP; DB2START; CREATE DATABASE mysdedb USING CODESET UTF-8 TERRITORY US COLLATE USING SYSTEM USER TABLESPACE MANAGED BY DATABASE USING (FILE '/db2_data/mysdedb/sdetbsp' 51200); CONNECT TO mysdedb user db2admin using <your password>; CREATE REGULAR TABLESPACE regtbs PAGESIZE 4 K MANAGED BY DATABASE USING ( FILE '/db2_data/mysdedb/regtbs' 125000); CREATE LONG TABLESPACE lobtbs PAGESIZE 4 K MANAGED BY DATABASE USING ( FILE '/db2_data/mysdedb/lobtbs' 51200); CREATE USER TEMPORARY TABLESPACE sdespace PAGESIZE 4 K MANAGED BY SYSTEM USING ('/db2_data/mysdedb/sdespace' ); GRANT USE OF TABLESPACE regtbs TO PUBLIC; GRANT USE OF TABLESPACE lobtbs TO PUBLIC; GRANT USE OF TABLESPACE sdespace TO PUBLIC; GRANT DBADM ON DATABASE mysdedb TO USER SDE; UPDATE DATABASE CONFIGURATION FOR mysdedb USING APP_CTL_HEAP_SZ 2048; UPDATE DATABASE CONFIGURATION FOR mysdedb USING APPLHEAPSZ 2048; UPDATE DATABASE CONFIGURATION FOR mysdedb USING LOGPRIMARY 10; FORCE APPLICATION ALL; DB2STOP FORCE; DB2START;
-
USER TEMPORARY 表スペースを SMS(system-managed space)として作成します。
たとえば、次のような場合です。
CREATE USER TEMPORARY TABLESPACE sdespace PAGESIZE 4 K MANAGED BY SYSTEM USING ('d:\db2_data\sdespace' ); COMMENT ON TABLESPACE sdespace IS '';
-
すべての表スペースの USE 権限を PUBLIC に付与します。
GRANT USE OF TABLESPACE regtbs TO PUBLIC;
データベースの作成後、データベースを空間対応にする必要があります。詳細については、「DB2 データベースの空間対応」をご参照ください。