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 権限を付与するサンプル スクリプトが含まれます。

手順:
  1. データベースを作成するスクリプトを作成します。
    メモメモ:

    ジオデータベースが格納されるデータベースの名前には、特殊文字は使用できません。

    次にスクリプトの例を示します。データベース名、パスワード名、コンテナ名などの変数とパスを、各自のサイトで必要な情報に置き換えて利用できます。

    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;
  2. 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 '';
  3. すべての表スペースの USE 権限を PUBLIC に付与します。
    GRANT USE OF TABLESPACE regtbs TO PUBLIC; 

データベースの作成後、データベースを空間対応にする必要があります。詳細については、「DB2 データベースの空間対応」をご参照ください。

関連項目


3/6/2012