暂无图片
哪位做过windows迁移到linux?最后restore之后,recover没有redo日志,怎么解决的?
我来答
分享
Bigbig
2021-05-14
哪位做过windows迁移到linux?最后restore之后,recover没有redo日志,怎么解决的?

哪位做过windows迁移到linux?最后restore之后,recover没有redo日志,怎么解决的?我做完上一步 resotre之后,下一步不能正常执行,提示缺失redo。用resetlogs开也不行
微信图片_20210514104818.jpg

我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
你好我是李白

windows跟linux虽然是相同endian,甚至可以构建dataguard,rman备份可以直接使用,但是,但是redo是不可以用的。
来自文档:
Restore From Windows To Linux using RMAN Fails (Doc ID 2003327.1)

Note, redo application is not supported between Linux and Windows except with a standby database. This means that the backup must be a 
cold (consistent) backup, which requires no redo application.  If redo apply is required to recover the database on the new platform it will fail. 
Using consistent (cold) backup method should be used for duplicating cross platform.

所以特定条件下,需要下面步骤才能直接使用,并resetlogs时不需要归档以及redo,并且会resetlogs重新生成联机日志:

  1. 原库
    RMAN> shutdown immediate;
    RMAN> startup mount;
    RMAN> backup …
  2. Linux
    restore
    resetlogs upgrage(存在跨版本升级情况),因为不存在需要redo做前滚,数据库为一致性状态,所以才可以直接open resetlogs
暂无图片 评论
暂无图片 有用 0
伤城

如果不跨版本的话,都是11.2.0.4.是不是恢复完成后,就直接用resetlog就可以了?不用upgrage就行了
rman恢复的时候直接restore不用recover了?

暂无图片 评论
暂无图片 有用 0
你好我是李白

如果还是windows到linux的话,想用rman直接备份恢复,就不能做recover,因为做不了,所以才需要在下面状态下rman备份,规避掉目标端需要recover情形。
RMAN> shutdown immediate;
RMAN> startup mount;

而上面rman备份出来,数据库本身是干净的,不需要前滚回滚,所以可以直接open resetlogs。

暂无图片 评论
暂无图片 有用 0
伤城

好的,明白了。十分感谢!

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏