暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle DG库出现ora-01157,ora-01111,ora-0110

原创 DER322 2022-08-15
2449

事情的经过是这样的:

1、asm的+DATA空间告警了,通过resize一些dbf解除了告警。为了不让告警产生,我把新增的数据文件暂时放在了+FRA目录下面。表面上主库跑得很正常,但是大错就此铸成(历史书经常用这句话)

2、为什么说大错呢?主库的数据文件换了目录,DG库的spfile里面的db_file_name_convert没有这个转化,所以dbf无法创建成功。

3、归档文件一直传过来,但无法应用日志,所以接下来,开始出现新的告警:当归档使用空间达到设置总空间80%时,进行预警。只好通过ALTER SYSTEM SET db_recovery_file_dest_size='130G' SCOPE=BOTH;来解决。可能过了一段时间又继续告警,就继续增加。

4、加了三次,总感觉哪里不对劲。于是尝试去删除归档,出现看到了归档日志还未apply,无法删除(具体出错信息忘了截图了)。至于,原因已经找到了


尝试去主库修改db_file_name_convert:

文档里是这样的:alter system set db_file_name_convert='/u01/app/oracle/oradata/fsscdbadg','+DATA/fsscdb/datafile' sid='*' scope=spfile;
改成:
alter system set db_file_name_convert='/u01/app/oracle/oradata/fsscdbadg','+DATA/fsscdb/datafile','/u01/app/oracle/oradata/fsscdbadg','+FRA/fsscdb/datafile' sid='*' scope=both;
ORA-02096: 此选项的指定初始化参数不可修改
alter system set db_file_name_convert='/u01/app/oracle/oradata/fsscdbadg','+DATA/fsscdb/datafile','/u01/app/oracle/oradata/fsscdbadg','+FRA/fsscdb/datafile' sid='*' scope=spfile;
System alterd.
看来需要重启了。主库不敢动,先放着吧


备库:

1、备份spfilefsscdbadg.ora,修改里面的db_file_name_convert

2、shutdown immediate; startup mount;  alter database open read only;

出现:ERROR at line 1:

ORA-10458: standby database requires recovery
ORA-01157: cannot identify/lock data file 94 - see DBWR trace file
ORA-01111: name for data file 94 is unknown - rename to correct file
ORA-01110: data file 94:
'/u01/app/oracle/product/11.2.0/dbhome_1/dbs/UNNAMED00094'




可是这个目录下,明明没有UNNAMED00094,各方百度,找到这个:http://blog.chinaunix.net/uid-20687159-id-5844098.html

ALTER SYSTEM SET db_file_name_convert='+DATA/fsscdb/datafile','/u01/app/oracle/oradata/fsscdbadg','+FRA/fsscdb/datafile','/u01/app/oracle/oradata/fsscdbadg','+DATA/fsscdb/tempfile','/u01/app/oracle/oradata/fsscdbadg' SCOPE=SPFILE;

shutdown immediate;

startup mount;
alter system set standby_file_management=manual;
alter database create datafile 94 as '/u01/app/oracle/oradata/fsscdbadg/tbs_fssc94.dbf'; --指定正确位置
alter system set standby_file_management=auto;
alter database open;
recover managed standby database using current logfile disconnect;

理论上这个操作是可以了,归档开始同步。



看着归档开始同步,整个石头都落地了!8月9号的,距离今天有6天了。



---------期间碰到一个插曲也纪录一下--------------


ALTER SYSTEM SET db_recovery_file_dest_size='160G' SCOPE=BOTH
*
ERROR at line 1:
ORA-32001: write to SPFILE requested but no SPFILE is in use

然后通过show parameter spfile查看,居然是空的。

alter system set spfile = '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/spfilefsscdbadg.ora';

不确定为什么spfile不见了,只能再次指定。







「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论