我的standby已经做好,但是我把redo文件的目录和归档目录放到了一起,想改改redo的位置。
初始的位置:
show parameter log_file_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_file_name_convert string +DG1/c3/onlinelog, /app/oracle/oradata/archivelog
sys@c3> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /app/oracle/oradata/archivelog
Oldest online log sequence 0
Next log sequence to archive 0
Current log sequence 6306
我想把redo的目录放到/app/oracle/oradata/c3
第一次的做法:
备库停止应用:alter database recover managed standby database cancel;
然后shutdown备库
从操作系统将文件mv到/app/oracle/oradata/c3下面
在pfile中改变参数log_file_name_convert='+DG1/c3/onlinelog','/app/oracle/oradata/c3'
启动数据库到mount standby database状态,然后执行rename
sys@c3> alter database rename file '/app/oracle/oradata/archivelog/group_14.621.846263659' to '/app/oracle/oradata/c3/group_14.621.846263659'
*
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01516: nonexistent log file, datafile, or tempfile "/app/oracle/oradata/archivelog/group_14.621.846263659"
查看v$logfile已经变成了/app/oracle/oradata/archivelog/group_14.621.846263659
但是备库开启应用后:
Thu Jun 12 13:50:00 CST 2014
Errors in file /app/oracle/oradata/admin/c3/bdump/c3_mrp0_8846.trc:
ORA-00313: open failed for members of log group 13 of thread 1
ORA-00312: online log 13 thread 1: '/app/oracle/oradata/archivelog/group_13.405.846263647'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Thu Jun 12 13:50:07 CST 2014
Clearing online redo logfile 13 complete
Thu Jun 12 13:50:07 CST 2014
然后在位置/app/oracle/oradata/archivelog又重新创建了redo文件。
我再次将应用停止,然后rename
sys@c3> alter database rename file '/app/oracle/oradata/archivelog/group_9.280.845804869' to '/app/oracle/oradata/c3/group_9.280.845804869';
alter database rename file '/app/oracle/oradata/archivelog/group_9.280.845804869' to '/app/oracle/oradata/c3/group_9.280.845804869'
*
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01275: Operation RENAME is not allowed if standby file management is automatic.
报错,修改参数:
sys@c3> show parameter standby
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
standby_archive_dest string ?/dbs/arch
standby_file_management string AUTO
sys@c3> alter system set standby_file_management=manual;
System altered.
再次rename就成功了。
然后将参数修改回来。
sys@c3> alter system set standby_file_management='auto';
System altered.
Elapsed: 00:00:00.01
sys@c3> show parameter standby
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
standby_archive_dest string ?/dbs/arch
standby_file_management string auto
如需转载,请注明出处:http://blog.csdn.net/nanaranran/article/details/30473853