当前日志损坏如何确定是否包含未决日志

[复制链接]
查看11 | 回复9 | 2007-8-9 15:46:04 | 显示全部楼层 |阅读模式
报错日志组4损坏,
而且该组日志为当前日志组,
请问如何能确定该日志组中是否存在尚未提交的事务??

有mirror的情况下,如何恢复?
[ 本帖最后由 houyichong 于 2009-10-22 09:59 编辑 ]
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
查询v$transaction里有东西与否来判断是否当前有未提交的事务。
另外,如果出现current redo丢失,最好stop listener,shutdown immediate。
因为shutdown immediate会隐含checkpoint和rollback uncommit transaction,这样最大限度地保证减少影响。
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
有没有mirror?
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
放心,有mirror
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
有mirror的情况下,如何恢复?
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
如果mirror了,直接switch log,then drop the corrupted log member, then add a new member to the group.
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
顶楼上
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
alter database clear unarchived logfile group n (n为日志组编号)
如果执行这条语句 报错 则有未决事务
copy数据库备份
recover database until cancel 运行两次 第一次输入auto 第二次Cancel
alter database open resetlogs
最后别忘记做一次数据库全备份
当前联机日志中的事务会丢失
如果有mirror就不用恢复了 直接alter system switch logfile 再alter database drop logfile member和alter database add logfile member
[ 本帖最后由 kevin0509 于 2009-10-22 10:32 编辑 ]
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
原帖由 yanggq 于 2009-10-22 10:12 发表
如果mirror了,直接switch log,then drop the corrupted log member, then add a new member to the group.

有mirror还会报错吗?
回复

使用道具 举报

千问 | 2007-8-9 15:46:04 | 显示全部楼层
一般不会报错
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行