2024年4月22日发(作者:)
ORACLE使用数据文件恢复数据库
一、 问题描述
Oracle控制文件丢失,数据文件完整,导致数据库实例不能启动。在修改数据库服
务器的计算机名称、IP地址后,修改和文件中的HOST地址
后不能启动数据库实例或启动后不能登录使用数据,以及未能查找并解决数据库启动失败
原因时可以通过重建控制文件的方式对数据库实例进行恢复。
二、 恢复方法
1、
1)
恢复前准备工作
备份数据文件,文件路径为%ORACLE_NOME%/oradata/xxxx(xxxx为数
据库实例)。
2) 备份ORACLE安装路径下的
Oracleproduct10.2.0adminxxxxbdumpalert_(xxxx为数据库实例)。
3)
2、
1)
2)
ORACLE安装文件
恢复步骤
安装oracle数据库,安装时不要创建数据库实例
创建数据库实例:安装完成后创建数据库实例,实例名与原数据库实例相同,
并创建监听服务。
3) 拷贝数据文件:停止oracle相关服务,拷贝备份的数据文件到新安装的
oracle数据库安装位置对应路径下,删除新成的控制文件及日志文件
(%ORACLE_NOME%/oradata/下所有文件)、完成后重启oracle相关服务。
4) 准备重建控制文件脚本:打开事先备份的alert_文件,查找最后一
个create controlfile语句并修改以下几部分。
a) 若该语句中包含NORESETLOGS,则将其修改为RESETLOGS;原因是重做
日志文件已经丢失。
b)
c)
LOGFILE段是指定重做日志文件到期望的文件位置。
DATAFILE段是指定到数据文件的实际文件位置。不能包含临时表空间用到的
文件,否则报错(ora-01503,ora-01160,ora-01110)。
注意:create controlfile语句中如果包含NOARCHIVELOG,则为非归档模式,如
为ARCHIVELOG,则为归档模式,没有则保持没有。
5)
a)
重建控制文件
打开sqlplus,使用DBA(sys)用户登录到数据库
示例:打开cmd,执行sqlplus /nolog 回车
SQL>Conn sys/password as sysdba
b) 关闭数据库
示例:SQL>Shutdown immediate;
c) 启动数据库,但不挂载数据文件
SQL>Startup nomount;
发布者:admin,转转请注明出处:http://www.yc00.com/web/1713776390a2316338.html
评论列表(0条)