2012年5月16日水曜日

Oracleデータファイル移動方法


■データベースに接続せずに、SQL*Plus を起動
>sqlplus /nolog

■OS認証で接続
SQL> conn / as sysdba
接続されました。

■現行トランザクションのロールバック、セッション切断、停止
SQL> shutdown immediate
データベースがクローズされました。
データベースがディスマウントされました。
ORACLEインスタンスがシャットダウンされました。

■データベースをマウント
SQL> startup mount
ORACLEインスタンスが起動しました。

Total System Global Area 1258291200 bytes
Fixed Size                  2065408 bytes
Variable Size             738200576 bytes
Database Buffers          503316480 bytes
Redo Buffers               14708736 bytes
データベースがマウントされました。

■データファイル名を変更
SQL> alter database rename file 'E:\oradata\test1\test.dbf' to 'D:\oracle\product\10.2.0\oradata\test1\test.dbf';
データベースが変更されました。

■データベースを停止
SQL> shutdown
ORA-01109: データベースがオープンされていません。
データベースがディスマウントされました。
ORACLEインスタンスがシャットダウンされました。

■データベースを起動
SQL> startup
ORACLEインスタンスが起動しました。

Total System Global Area 1258291200 bytes
Fixed Size                  2065408 bytes
Variable Size             738200576 bytes
Database Buffers          503316480 bytes
Redo Buffers               14708736 bytes
データベースがマウントされました。
ORA-01113: ファイル6はメディア・リカバリが必要です
ORA-01110: データファイル6: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST1\TEST.DBF'
↑データファイルを移動させた場合に発生する場合があります。

■メディア・リカバリ
SQL> recover tablespace ユーザ名
メディア・リカバリが完了しました。

■データベースを停止
SQL> SHUTDOWN
ORA-01109: データベースがオープンされていません。
データベースがディスマウントされました。
ORACLEインスタンスがシャットダウンされました。

■データベースを起動
SQL> startup
ORACLEインスタンスが起動しました。

Total System Global Area 1258291200 bytes
Fixed Size                  2065408 bytes
Variable Size             738200576 bytes
Database Buffers          503316480 bytes
Redo Buffers               14708736 bytes
データベースがマウントされました。
データベースがオープンされました。
↑正常に起動