SQL> startup
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size 2213632 bytes
Variable Size 704645376 bytes
Database Buffers 356515840 bytes
Redo Buffers 5562368 bytes
ORA-15124: ASM file name '+DATADG/xx_data02.dbf
' contains an invalid alias name
使用RMAN duplicate创建Physical Standby,在mount standby的时候提示无效别名,这里奇怪的一点是它换行了,在原库中查看这个数据文件
查看数据文件所在目录,及查看建表空间脚本可以看到确实数据文件尾含有空格
因此需要将数据文件名rename,如果是一般的数据文件,先将文件所在表空间offline,cp或mv为新的数据文件,再在数据库中rename
这次情况与平常不一样,折腾了一番
1.在数据库中查看该数据文件的FILE#,为37
2.将数据文件所在表空间offline
3.将数据文件拷贝为新的数据文件 cp xx_data02.dbf* xx_data03.dbf
SQL> alter tablespace XX_DATA offline;
Tablespace altered.
SQL> declare
2 str varchar2(50);
3 begin
4 select name into str from v$datafile where file#=37;
5 execute immediate 'alter database rename file '''|| str || '''to ''/dbdata/oradata/xx_data03.dbf''';
6 end;
7 /
PL/SQL procedure successfully completed.
SQL> alter tablespace XX_DATA online;
Tablespace altered.
参考MOS :How to rename a datafile with special characters created by mistake (文档 ID 1554322.1)
最后修改时间:2022-08-22 18:26:51
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




