新增数据文件导致dataguard同步异常
来源:互联网 发布:access数据库好用吗 编辑:程序博客网 时间:2024/06/17 09:06
新增数据文件导致dataguard同步异常
前天一朋友发来一问题,一台服务器的归档目录快满了,不清楚是否可以清理掉,因为它是一台备机。这里记录一下当时指导他的处理过程:
确定主备关系
经了解,这是一套physical standby结构的dataguard。通常情况下,物理standby需要两边节点的物理结构也相同,否则需要通过参数db_file_name_convert、log_file_name_convert明确指定。
日志应用情况
要确定是否可以清除那些归档,需要查看,传递到备库的这些日志是否完全应用了。让他查询之后,结构如下,显然是没有应用完的。
为什么没有应用
竟然堆积了两百多个归档没有apply,那么想必是出现了什么异常,遗憾的是他并没有在alert日志找到相关的信息。(我觉得肯定会报出来,他没有找到而已)
看看dataguard相关的进程情况:
select process,status,client_process,sequence# from v$managed_standby;
正常情况下应该有MRP0进程处于WAIT_FOR_LOG状态或WRITING状态。但实际没有。
那么只能再应用一遍,看看报什么错吧。
alter database recover managed standby database disconnect from session;
立马报错了:
看样子是主库那边新增了数据文件,但是备端同步应用的时候发现无法新增,然后自动生成了一个文件名并放到默认的dbs路径下。这也就是导致日志无法应用的原因了。导致归档日志不断堆积。
看看主备库上的24号文件
主库:
备库:
从这里看,因为主备使用了裸设备,所以在主库新增数据文件的时候,备库无法正常创建。如果使用的filesystem或者asm存储,那么可以避免该问题的发生。
恢复过程
参照主库端的24号文件对应的裸设备大小在备端创建相同的裸设备文件。
mklv -y ora_users01 -t raw -ex -TO -w n -s n -r n datavg 10000mchown oracle:oinstall /dev/rora_users01
修改参数standby_file_management
将standby_file_management设为手动模式
alter system set standby_file_management='MANUAL' scope=both;--重新创建24号文件alter database create datafile '/oracle/app/product/10g/db_1/dbs/UNNAMED00024' as '/dev/rora_users01';
再次应用归档
alter database recover managed standby database disconnect from session;
随着归档日志的apply,24号文件状态将从RECOVER变为ONLINE。
归档日志已恢复正常应用。
未应用的日志越来越少。
当日志完全应用完毕后,即可清理这些归档以便回收空间。
- 新增数据文件导致dataguard同步异常
- 空间不足导致dataguard同步apply停止
- 【DataGuard】由于备库参数设置不当导致数据文件无法添加的故障分析
- oracle 11g dataguard同步异常,PROTECTION_LEVEL为RESYNCHRONIZATION
- dataguard :主库的一个归档日志没传送到备库,导致备库无法同步
- Dataguard 主库数据文件rename方法
- mysql数据文件同步脚本
- standby log的异常状态导致DG数据同步异常显示failure destination
- Oracle 11g R2之物理Dataguard 重命名数据文件
- 11g dataguard 下standby database的数据文件迁移
- dataguard 下修改主库的数据文件路径
- 数据库打开阶段,新增的数据文件损坏
- oracle dataguard 操作系统重启后数据不能同步
- 删除数据文件导致oracle系统无法启动
- 删除数据文件 导致 Sqlplus 无法登陆
- 删除数据文件 导致 Sqlplus 无法登陆
- 误删Oracle数据文件导致数据库无法打开
- 创建表空间数据文件过大导致失败
- 电影节(SDUT_2797)
- Clang Address Sanitizer
- SPOJ 7258 SUBLEX 后缀自动机
- 如何更方便快捷的调用restful服务
- 利用JS做到隐藏div和显示div
- 新增数据文件导致dataguard同步异常
- java反射以获取父类属性的值
- docker琐碎
- Android--app启动 黑白屏问题 解决
- spring webflow getting start
- TimesTen 应用层数据库缓存学习:7. 同步读写缓存
- red5服务器基础之red5环境的安装配置
- 求二叉树镜像 -- 采用递归和非递归方法
- Linux磁盘管理