REDOログファイルをリネームする

Pocket

【概要】
REDOログファイルのリネーム・再配置する手順を示します。
【SQL文】
/*
|| ■REDOログファイルをリネームする
*/
–変更前の状態を確認(STATUSがCURRENTかどうかを見る)
SQL> SELECT * FROM v$log;
SQL> SELECT * FROM v$logfile;

–DBを停止してSQL*Plusを抜ける
SQL> SHUTDOWN
SQL> EXIT

 OSコマンドを使用して物理ファイルをコピー
$ cp /oracle_dir/redo_old.log /oracle_dir/redo_new.log

–SQL*PlusでOracleに接続
$ sqlplus /nolog
SQL> conn / as sysdba

※Oracle8iからは、現行グループでなければOPEN時でも行なえる。
SQL> STARTUP MOUNT

–STATUSがCURRENTの場合はログスイッチをする
SQL> ALER SYSTEM SWITCH LOGFILE;

–リネーム(MOUNTモードで、STATUSはCURRENT以外)
SQL> ALTER DATABASE (db_name) RENAME FILE ‘/oracle_dir/redo_old.log’
2 , ‘/oracle_dir/redo_new.log’) SIZE 10M;

※ALTER DATABASE文ではREDOログファイルを改名してもファイル内のポインタが変わるだけで、
OSファイルが物理的に移動・改名することはない。

–DBをOPENモードに変更する
SQL> ALTER DATABASE OPEN;

–変更後の状態を確認(ファイルは物理的にコピーされる)
SQL> SELECT * FROM v$log;
SQL> SELECT * FROM v$logfile;

以上です (^^♪