Oracle解决无备份的数据文件损坏导致无法启动问题
解决无备份的数据文件损坏无法启动问题:
查看当前实例状态:
创建一个测试表空间:
SYS@prod>shutdown immediate;
一致性关库。
模拟破坏数据文件test.dbf:
实例重新启动,无法启动到open模式,数据文件test.dbf丢失,无法锁定。
此时实例为mount状态。
将其offline drop
该命令不会删除数据文件,只是将数据文件的状态更改为recover
Open模式
在数据库层面删除数据文件。
由于该表空间中仅有一个数据文件,Oracle不允许删除表空间中的第一个数据文件。
所以需要将表空间删除。
如果表空间中有多个数据文件,且出现问题的不是第一个数据文件,那么将其数据文件删除即可。
本次删除整个表空间
如果出现问题的表空间的第一个数据文件,删除整个表空间的话,会将其他数据文件也删除。
所以不能删除整个表空间。
解决办法如下:
Test1 为 8号文件
Test2 为 9号文件
破坏test1.dbf
无法到达open状态
在mount模式下进行offline drop
启动到open模式,删除8号文件。
由于8号文件为表空间的第一个数据文件
Oracle禁止删除表空间的第一个数据文件
解决办法:
查看8号的状态offline:
将8号文件online(需要介质恢复)
Open模式下数据文件offline -> online需要介质恢复
介质恢复的原因可以查看数据文件头部SCN与控制文件中SCN不一致,需要进行介质恢复
数据文件online
解决完毕。
语句汇总:
create tablespace test datafile ‘xxxx’ size xxM (创建表空间)
Alter tablespace test drop datafile 8 (删除表空间数据文件)
数据文件中有内容无法删除,可以考虑将数据文件的对象,内容等移动到其他表空间。
Alter tablespace test add datafile ‘xxxx’ size xxM (向表空间中添加数据文件)
Alter database datafile 8 offline (数据文件offline)
alter database datafile 8 online (数据文件online)
Drop tablespace test including contents and datafiles (删除表空间+内容+数据文件)
Alter database create datafile 8 as ‘/u01/xxxxx’
- 文件系统损坏导致虚拟机无法正常启动的问题及解决方法
- 文件系统损坏导致虚拟机无法正常启动的问题及解决方法
- oracle可执行文件s位导致的Cluster资源组无法正常启动的问题解决
- 解决ubuntu因断电、故障等导致文件损坏而无法启动的问题
- oracle可执行文件s位导致的Cluster资源组无法正常启动的问题解决
- [虚拟机-系统重启]文件系统损坏导致虚拟机无法正常启动的问题及解决方法
- oracle数据文件强制删除导致无法启动的解决办法
- oracle 12c误删pdb数据文件导致整个数据库无法打开问题
- 误使用rm删除数据文件导致oracle无法启动的修复方法
- 更改计算机名后导致Oracle dbconsole无法启动问题解决方法
- mysql启动后随即关闭问题解决(ibdata1文件损坏导致)
- ORA-01251错误oracle服务启动无法连接误删非法删除数据文件导致数据库不能打开ORA-01122 ORA-01251
- Oracle因删除库数据文件导致服务无法启动的处理方法
- MySQL之——表数据文件损坏导致数据库无法启动
- MySQL之——表数据文件损坏导致数据库无法启动
- 完美解决mysql启动后随即关闭的问题(ibdata1文件损坏导致)
- Linux下修改配置文件导致系统无法启动问题解决办法
- 类system32\drivers\**mom.sys文件损坏导致宕机无法启动Windows解决方法
- MySQL中配置文件my.cnf因权限问题导致无法启动的解决方法
- Oracle数据文件丢失导致数据库启动故障解决一例