catalog start with '/home/bak/'
RESTORE STANDBY CONTROLFILE FROM '/home/bak/dbbk_0_20190624_40_1';

恢复也正常
打开只读模式

从您提供的操作步骤看,只是注册了备份片? 并且只是还原了控制文件? 请问现在db处于什么状态? nomount ? mount? open? 另外就是dg rman恢复步骤是nomount, restore 控制文件,mount,restore ,recover database, 最后Open 只读模式? 是否缺失步骤
评论
有用 0我之前说的有点儿问题,你的备份是重新备份的是吧,你需要再备份一次控制文件,备份成standby control file,或者你这个备份本身就是全库备份的话,附带有控制文件+spfile的备份集,你可以直接用这个备份集恢复成standby control file。
总之:流程是:
全备,
备份控制文件,
恢复备库控制文件,启动备库到mount
备库创建standby log file,enable主库的archive_dest_state_2(假设主库配置传输日志是配置的archive_dest_2),这时候归档日志就开始正常从主库往备库传了。
备库restore数据文件
备库sqlplus中recover managed standby database disconnect from session;
日志追上以后(查看v$managed_standby视图),recover managed standby database cancel;
alter database open;这里可以不加read only,因为备库也只能open到read only
recover managed standby database using current logfile;
查看v$managed_standby的mrp0是appling log的话,并且看到日志已经追齐了,最好学会结合alert观察这些。就可以创建表进行一下实时性的测试。
至于前提参数配置以及密码文件以及静态监听的配置,相信你已经做好了,就不再赘述了。
另外,看报错,想为什么,仔细看报错的意思。这一次的报错跟上一次你发的报错已经不一样了。为什么报这样的错,可以好好思考下。而不是一味的就只看到数据库无法readonly打开。尤其像你这样对dg还特别不熟的,操作一定要规范,按步骤一步一步来,不要急于求成。
评论
有用 0另外,记得在备库上把这个standby_file_management设为auto,主库记得开force logging。
评论
有用 0
墨值悬赏

