ORA-10458:ORA-01157:ORA-01110: and ORA-01668:

来源:互联网 发布:人生苦短python当歌 编辑:程序博客网 时间:2024/06/04 23:21
说明:
搭建dg备库,参数中有db_file_name_convert
当时没看清楚 
alter system set DB_FILE_NAME_CONVERT=' +DATA/orcl/datafile/','/oradata/datafile/' scope=spfile;
参数的第一个值有一个空格,导致主库添加数据文件时,备库未跟随生成相应数据文件 ,
但备库要置于open  read only 模式
SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/oradata/datafile/system.273.911455283
/oradata/datafile/sysaux.274.911455285
/oradata/datafile/undotbs1.275.911455285
/oradata/datafile/users.276.911455285
/oradata/datafile/undotbs2.281.911455619
/u01/app/oracle/product/11.2.0/dbhome_1/dbs/UNNAMED00006

进到/u01/app/oracle/product/11.2.0/dbhome_1/dbs/下,不存在该文件
手动创建一个UNNAMED00006 打开数据库报错,控制文件记录数据文件的头
新建的文件头在控制文件里没有记录。
SQL> alter database mount standby database;

Database altered.

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-10458: standby database requires recovery
ORA-01157: cannot identify/lock data file 1 - see DBWR trace file
ORA-01110: data file 1: '/oradata/datafile/system.273.911455283.dbf'

解决方法,打开数据库到mount 然后offline这个数据文件
SQL> shutdown immediate;
ORA-01109: database not open

SQL> startup mount;
ORACLE instance started.

Total System Global Area 1252663296 bytes
Fixed Size                  2252824 bytes
Variable Size             402657256 bytes
Database Buffers          838860800 bytes
Redo Buffers                8892416 bytes
Database mounted.


SQL> alter database datafile 6 offline;
alter database datafile 6 offline
*
ERROR at line 1:
ORA-01668: standby database requires DROP option for offline of data file


SQL> alter database datafile 6 offline drop;

Database altered.

然后关闭数据库 以standby 角色启动 open 进入read only 模式,由于那个数据文件没有创建,所以也删不掉
再次查询还是存在
SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/oradata/datafile/system.273.911455283
/oradata/datafile/sysaux.274.911455285
/oradata/datafile/undotbs1.275.911455285
/oradata/datafile/users.276.911455285
/oradata/datafile/undotbs2.281.911455619
/u01/app/oracle/product/11.2.0/dbhome_1/dbs/UNNAMED00006
不过已经可以read only或正常切换了
有一点没有确认就是我在上面offline 数据文件6的时候
alter database mount standby database ;
是否可以alter database datafile 6 offline drop;

0 0