下面為您介紹的兩種Oracle移動數據文件方法適用於在在unix或Linux環境中的聯機狀態和脫機狀態,如果您感興趣的話,不妨一看。
Oracle移動數據文件:
ALTER TABLESPACE方法(聯機狀態):
用此方法,要求此數據文件既不屬於SYSTEM表空間,也不屬於含有ACTIVE回滾段或臨時段的表空間。
- $ sqlplus '/as sysdba'
#把需要移動的數據文件對應的表空間offline
- SQL> alter tablespace ipas_acct_data offline
#把數據文件cp到想要放的目錄下。
- SQL> !mv /opt/oracle/wacosdata/ipas_acct_data001.dbf /opt/Oracle/nms/oradata/ipas_acct_data001.dbf
#修改表空間中數據庫文件的位置。
- SQL> alter tablespace ipas_acct_data rename datafile '/opt/oracle/wacosdata/ipas_acct_data001.dbf' to '/opt/Oracle/nms/oradata/ipas_acct_data001.dbf'
#把表空間online。
- SQL> alter tablespace ipas_acct_data online
#查看修改結果。
- SQL> select file_name from dba_data_files where tablespace_name = 'IPAS_ACCT_DATA';
ALTER DATABASE方法(脫機狀態):
用此方法,可以移動任何表空間的數據文件。
- $ sqlplus '/as sysdba'
- SQL> shutdown immediate
- SQL> !mv /opt/Oracle/oradata/wacos002.dbf /ora10g/oradata/wacos002.dbf
- SQL> startup mount
- SQL> alter database rename file '/opt/Oracle/oradata/wacos002.dbf' to '/ora10g/oradata/wacos002.dbf';
- SQL> alter database open;
- SQL> set head off
- SQL> SELECT file_name from dba_data_files where tablespace_name = 'WACOS';