暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

RAC中误将数据文件创建在本地盘时的修正

原创 xiangjingtao 2020-12-09
895

用户创建表空间时误将数据文件放到了本地盘,重启数据库时一个实例启动不了,只能offline该表空间后启动数据库。现用户想知道怎样能把这个表空间数据文件中的数据恢复出来。

建错的表空间ZJZWDATA数据文件在节点2,所以只能从节点2上打开。可在节点2上将表空间offline之后使用dbms_file_transfer将数据文件移到ASM共享存储(如使用的是集群文件系统,直接拷贝 数据文件即可)。

1)为两个数据文件路径创建目录

节点2:创建两个directory,一个指向本地盘该数据文件目录;一个指向ASM数据文件目录。

SQL> create directory test1 as ‘/home/oracle/’;

Directory created.

SQL> create directory test2 as ‘+DG_DATA01/oradata/xacsidb’;

Directory created.

2)offline表空间

节点2:offline表空间ZJZWDATA

SQL> alter tablespace ZJZWDATA offline;

Tablespace altered.

3)拷贝数据文件到ASM

节点2:使用dbms_file_transfer拷贝该数据文件到ASM

SQL> exec
dbms_file_transfer.copy_file(‘TEST1’,‘d:oracle1zjzwdata.dbf’,‘TEST2’,‘d:oracle1zjzwdata.dbf’);

PL/SQL procedure successfully completed.

4)修改控制文件中的数据文件路径

节点2:

SQL> alter database rename file ‘/u01/app/oracle/product/10.2.0/db_1/dbs/d:oracle1zjzwdata.dbf’ to
‘+DG_DATA01/oradata/xacsidb/test1.dbf’

SQL> /

Database altered.

5)online表空间ZJZWDATA

节点2:online表空间ZJZWDATA

SQL> alter tablespace ZJZWDATA online;

Tablespace altered.

最后修改时间:2020-12-09 09:30:28
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论