Empress 資料一覧

アカウント名が8文字を超えているアカウントでDBを作成する方法

2007/11/4更新

対応バージョン: 6.10

Empressの制約によりDBを作成するアカウントのアカウント名は8文字以内である必要があるが、あらかじめ8文字以内に収まるアカウントを用意しておき、そのアカウントでいったんDBを作成した後にシステムテーブル中のアカウント情報を変更すればこの制限を回避することができる。

以下に手順を示す。

ここでは例として変更前/後のアカウントをそれぞれ「under8」(6文字)、「over8char」(9文字)として説明する。

1. under8アカウントでDBを作成する。

2. DB作成後、以下のようにDBの権限を変更する。これをDBの数分繰り返す。

% empcmd <DB> "update sys_tables set tab_creator='over8char'"

% empcmd <DB> "update sys_privs set priv_grantor='over8char' \
  where priv_grantor='under8'"

% empcmd <DB> "update sys_privs set priv_grantee='over8char' \
  where priv_grantee='under8'"

% empcmd <DB> "update sys_attr_privs set apriv_grantor='over8char' \
  where apriv_grantor='under8'"

% empcmd <DB> "update sys_attr_privs set apriv_grantee='over8char' \
  where apriv_grantee='under8'"

% vi <DB>/tabzero

(変更前)
MSDBADMINISTRATOR=under8

(変更後)
MSDBADMINISTRATOR=over8char

3. /etc/passwdを編集する等により、under8のアカウント名をover8charに変更する。

4. over8charアカウントで先程のDBの権限変更を有効にする。これをDBの数分繰り返す。

% empadm <DB> recompile_all