Infra DevOps

インフラ構築のナレッジや、運用の自動簡易化に関する記事を書いていこうと思います

Vault環境下でパラメータ変更後にオープンできなくなった

MAX_STRING_SIZEを変更後に@?/rdbms/admin/utl32k.sqlを実行したところエラー

 

でDVをいったん無効化しようとしたら

---------------------------------

SQL> EXEC DBMS_MACADM.DISABLE_DV;
BEGIN DBMS_MACADM.DISABLE_DV; END;

      *
行1でエラーが発生しました。:
ORA-06550: 行1、列7:
PLS-00904: オブジェクト'DVSYS.DBMS_MACADM'にアクセスするには権限が不十分です。 O                                                                 RA-06550: 行1、列7:
PL/SQL: Statement ignored

---------------------------------

 

 

dbvowner(DVの管理権限もったユーザ)で接続しようとしたら

---------------------------------

SQL> conn dbvowner
パスワードを入力してください:
ERROR:
ORA-39710: UPGRADEモードでOPENする場合、AS SYSDBAでの接続のみ可能です

---------------------------------

となる。

 

最終的に

SQL> create pfile='kari.pfile' from spfile;

SQL> !vi kari.pfile

でMAX_STRING_SIZE行を削除

SQL> create spfile from pfile='kari.pfile';

でSPFILEを修正後データベースを通常モードでオープンすることができました。

そのあとは

 

SQL> conn dbvowner
SQL> SELECT PARAMETER, VALUE FROM V$OPTION WHERE PARAMETER = 'Oracle Database Vault';

PARAMETER
--------------------------------------------------------------------------------
VALUE
--------------------------------------------------------------------------------
Oracle Database Vault
TRUE


SQL> EXEC DBMS_MACADM.DISABLE_DV;

SQL> shutdown immediate;

SQL> SELECT PARAMETER, VALUE FROM V$OPTION WHERE PARAMETER = 'Oracle Database Vault';

PARAMETER
--------------------------------------------------------------------------------
VALUE
--------------------------------------------------------------------------------
Oracle Database Vault
FALSE

というかんじでDatabase Vaultを無効化。

パラメータ変えたらまたVaultを有効化して終了。

 

 DatabaseVaultの略称がDVってなんかね