Skip to content

Oracle移动数据文件

连接数据库

sqlplus /nolog
conn / as sysdba

查看数据文件位置

SQL> select file_name from sys.dba_data_files;

SQL> select name from v$datafile;

FILE_NAME
------------------------------------------------------------------------
/oradata/PMPTGDB/users01.dbf
/oradata/PMPTGDB/undotbs01.dbf
/oradata/PMPTGDB/sysaux01.dbf
/oradata/PMPTGDB/system01.dbf
/oradata/PMPTGDB/work.dbf

关闭数据库

SQL> shutdown immediate;

移动文件到新的位置

比如新的位置为/media/hdd1/oradata/PMPTGDB

cd /oradata/PMPTGDB/
mv users01.dbf undotbs01.dbf sysaux01.dbf system01.dbf work.dbf /media/hdd1/oradata/PMPTGDB 

以mount模式启动数据库

SQL> startup mount;
SQL> alter database rename file '/oradata/PMPTGDB/users01.dbf' to '/media/hdd1/oradata/PMPTGDB/users01.dbf '; 
--对每一个要移动的文件重复执行上面的alter database rename file ... to ...

打开数据库

SQL> alter database open;

再次查看文件位置,发现已经更改。