分享交流
合作共赢!

Oracle更改数据文件路径方法总结

背景:
数据库安装在PC服务器的本地硬盘上,数据文件也存放在本地,目前增加了存储设备,需要将数据文件拷贝到存储下,将数据文件路径指定目录存储,具体如下:
数据文件现在路径:/data3/oradata/
数据文件存储路径:/data2/oradata/
需要拷贝的数据文件:nnc_data01_12.dbf nnc_data01_14.dbf nnc_data01_16.dbf nnc_INDEX01_5.dbf nnc_data01_13.dbf nnc_data01_15.dbf nnc_data01_17.dbf nnc_INDEX01_6.dbf

下面我们说下具体步骤:
1、挂载存储目录
[root@chd106 ~]mount /dev/sda /orcl
2、建立一个文件夹来存放需要拷贝出来的数据文件,建完之后需要修改文件夹属主及读写权限,如下:

[root@chd106 ~]# cd /orcl
[root@chd106 ~]# mkdir oracle
[root@chd106 ~]# mkdir oradata
[root@chd106 ~]# mkdir orcl
[root@chd106 ~]# chown -R oracle:oinstall /orcl/oracle/oradata/orcl/
[root@chd106 ~]# chmod -R 755 /orcl/oracle/oradata/orcl/

3、关闭数据库监听

[oracle@chd106 ~]$ lsnrctl stop

4、关掉数据库,并启动数据库到mount状态;

SQL> shutdown immediate;
SQL>startup mount;

5、拷贝数据文件到/orcl/oracle/oradata/orcl/,先拷贝,不急着删除源文件,记得拷贝数据文件,需要是oracle用户,否则拷贝完成后,权限不对。

[oracle@chd106 orcl]$ pwd
/home/oracle/oradata/orcl/
[oracle@chd106 orcl]$ cp *.dbf  /orcl/oracle/oradata/orcl/

这个过程中,需要些时间,时间长短视文件大小而定,耐心等待吧

6、拷贝完之后进入到数据库rename文件,修改改数据文件的路径及名称,实质就是修改controlfile里面的内容:

SQL>alter database rename file '/data3/oradata/nnc_INDEX01_5.dbf' to '/data2/oradata/nnc_INDEX01_5.dbf';
SQL>alter database rename file '/data3/oradata/nnc_INDEX01_6.dbf' to '/data2/oradata/nnc_INDEX01_6.dbf';

SQL>alter database rename file '/data3/oradata/nnc_data01_12.dbf' to '/data2/oradata/nnc_data01_12.dbf';
SQL>alter database rename file '/data3/oradata/nnc_data01_13.dbf' to '/data2/oradata/nnc_data01_13.dbf';
SQL>alter database rename file '/data3/oradata/nnc_data01_14.dbf' to '/data2/oradata/nnc_data01_14.dbf';
SQL>alter database rename file '/data3/oradata/nnc_data01_15.dbf' to '/data2/oradata/nnc_data01_15.dbf';
SQL>alter database rename file '/data3/oradata/nnc_data01_16.dbf' to '/data2/oradata/nnc_data01_16.dbf';
SQL>alter database rename file '/data3/oradata/nnc_data01_17.dbf' to '/data2/oradata/nnc_data01_17.dbf';

这个过程需要耐心点

7、打开数据库并查看数据库状态;
SQL> alter database open;
Database altered.

SQL> select file#,ts#,status,name from v$datafile;
 1          0 SYSTEM
 2          1 online
 3          2 online
 4          3 online
 5          4 online
 6          5 online
 7          6 online
 8          7 online

是看数据文件路径有没有修改,如果已经修改而且是online状态就表示修改成功了;

8、查看数据文件所在目录

SQL> select name from v$datafile;
/orcl/oracle/oradata/orcl/example01.dbf
/orcl/oracle/oradata/orcl/sysaux01.dbf
/orcl/oracle/oradata/orcl/system01.dbf
/orcl/oracle/oradata/orcl/temp01
/orcl/oracle/oradata/orcl/undotbs01.db
/orcl/oracle/oradata/orcl/users01.dbf
/orcl/oracle/oradata/orcl/users02.dbf

如上数据文件均在存储目录路径下,说明数据文件迁移成功。
9、验证业务
如果业务正常,就可以进行下边的步骤了
10、删掉源文件
这个步骤可以不操作,原来的数据文件现在已经没有什么用了

此内容查看价格0.1立即购买
赞(0) 打赏
未经允许不得转载:琼杰笔记 » Oracle更改数据文件路径方法总结

评论 抢沙发

评论前必须登录!

 

分享交流,合作共赢!

联系我们加入QQ群

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册