Oracleで作成した表領域を格納するデータファイルのパスを変更する場合の手順を確認します。
まずは、現在のパスを確認します。
set lines 120
set pages 100
set term off
clear col
col TABLESPACE_NAME format a10
col MBYTES format 9,999,990
col FILE_NAME format a35
col STATUS format a10
col MBYTES format 9,999,990
col INCRE format 9,999,990
col AUTOEXTENSIBLE format a5
col ONLINE_STATUS format a6
select
status,
tablespace_name,
file_name,
status,
increment_by,
bytes/1024/1024 mbytes,
increment_by,
autoextensible,
online_status
from
dba_data_files
/
TABLESPACE FILE_NAME STATUS MBYTES INCREMENT_BY AUTOE ONLINE
---------- ----------------------------------- ---------- ---------- ------------ ----- ------
USERS /u01/app/oracle/oradata/orcl/users0 AVAILABLE 5 160 YES ONLINE
1.dbf
(中略)
SAMP01 /u01/app/oracle/product/11.2.0/dbho AVAILABLE 100 63 YES ONLINE
me_1/dbs/samp01.dbf
6行が選択されました。
今回はSAMP01表領域のパスを変更します。
SQL> ALTER TABLESPACE SAMP01 OFFLINE;
表領域が変更されました。
表領域をオフラインにして、触れないようにします。
[oracle@db01 ~]$ mv /u01/app/oracle/product/11.2.0/dbhome_1/dbs/samp01.dbf /u01/app/oracle/oradata/orcl/
OSコマンドでデータファイルの実態を移動します。
現時点では定義と実態が相違している状態です。
定義を修正します。
SQL> ALTER TABLESPACE SAMP01 RENAME DATAFILE '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/samp01.dbf' TO '/u01/app/oracle/oradata/orcl/samp01.dbf';
表領域が変更されました。
ALTER TABLESAPCE ~ RENAME DATAFILEで定義も修正します。
AVAILABLE SAMP01 /u01/app/oracle/oradata/orcl/samp01 AVAILABLE OFFLINE
.dbf
定義が修正されたことを確認しました。
SQL> ALTER TABLESPACE SAMP01 ONLINE;
表領域が変更されました。
最後に表領域をオンラインに戻します。
AVAILABLE SAMP01 /u01/app/oracle/oradata/orcl/samp01 AVAILABLE 63 100 63 YES ONLINE
.dbf
修正作業完了です。
まずは、現在のパスを確認します。
set lines 120
set pages 100
set term off
clear col
col TABLESPACE_NAME format a10
col MBYTES format 9,999,990
col FILE_NAME format a35
col STATUS format a10
col MBYTES format 9,999,990
col INCRE format 9,999,990
col AUTOEXTENSIBLE format a5
col ONLINE_STATUS format a6
select
status,
tablespace_name,
file_name,
status,
increment_by,
bytes/1024/1024 mbytes,
increment_by,
autoextensible,
online_status
from
dba_data_files
/
TABLESPACE FILE_NAME STATUS MBYTES INCREMENT_BY AUTOE ONLINE
---------- ----------------------------------- ---------- ---------- ------------ ----- ------
USERS /u01/app/oracle/oradata/orcl/users0 AVAILABLE 5 160 YES ONLINE
1.dbf
(中略)
SAMP01 /u01/app/oracle/product/11.2.0/dbho AVAILABLE 100 63 YES ONLINE
me_1/dbs/samp01.dbf
6行が選択されました。
今回はSAMP01表領域のパスを変更します。
SQL> ALTER TABLESPACE SAMP01 OFFLINE;
表領域が変更されました。
表領域をオフラインにして、触れないようにします。
[oracle@db01 ~]$ mv /u01/app/oracle/product/11.2.0/dbhome_1/dbs/samp01.dbf /u01/app/oracle/oradata/orcl/
OSコマンドでデータファイルの実態を移動します。
現時点では定義と実態が相違している状態です。
定義を修正します。
SQL> ALTER TABLESPACE SAMP01 RENAME DATAFILE '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/samp01.dbf' TO '/u01/app/oracle/oradata/orcl/samp01.dbf';
表領域が変更されました。
ALTER TABLESAPCE ~ RENAME DATAFILEで定義も修正します。
AVAILABLE SAMP01 /u01/app/oracle/oradata/orcl/samp01 AVAILABLE OFFLINE
.dbf
定義が修正されたことを確認しました。
SQL> ALTER TABLESPACE SAMP01 ONLINE;
表領域が変更されました。
最後に表領域をオンラインに戻します。
AVAILABLE SAMP01 /u01/app/oracle/oradata/orcl/samp01 AVAILABLE 63 100 63 YES ONLINE
.dbf
修正作業完了です。

コメント