Oracle数据库文件路径变更
环境:RHEL 6.4 + Oracle 11.2.0.3
情景一:只是部分普通数据文件迁移,可以在线操作。
1.将对应表空间offline,移动数据文件到新路径
2.数据文件alter database rename file '' to '';
3.再将表空间online
情景二:所有数据文件迁移。
本文是针对情景二的实验,需求:主机/oradata挂节点变更为/usr2.在/usr2建立oradata文件夹来存放之前/oradata的所有文件。
操作步骤:
1.查看当前数据库的数据文件,临时文件,日志文件,控制文件,参数文件等信息。
2.根据当前spfile创建pfile文件,正常关闭数据库,移动源数据库文件到新的存储路径。
3.修改数据库参数文件,更改控制文件路径为新的存储路径,用改好的pfile文件启动数据库到mount状态。
4.重定向数据库的所有数据文件、日志文件路径,然后正常打开数据库。
5.核查各文件路径没有问题,根据当前pfile创建spfile,重启数据库实例。
1.查看当前数据库的数据文件,临时文件,日志文件,控制文件,参数文件等信息。
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/oradata/sysdata/jingyu/system01.dbf
/oradata/sysdata/jingyu/sysaux01.dbf
/oradata/sysdata/jingyu/undotbs01.dbf
/oradata/sysdata/jingyu/users01.dbf
SQL> select name from v$tempfile;
NAME
--------------------------------------------------------------------------------
/oradata/sysdata/jingyu/temp01.dbf
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/oradata/sysdata/jingyu/redo03.log
/oradata/sysdata/jingyu/redo02.log
/oradata/sysdata/jingyu/redo01.log
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/oradata/sysdata/jingyu/control01.ctl
/opt/app/oracle/fast_recovery_area/jingyu/control02.ctl
SQL> show parameter pfile
NAME TYPE VALUE
------------------------------------ --