以前的datafiles,control files等都在,我重装了winnt,oracle,新建了个与以前同样的数据库实例,然后用恢复了所有datafiles,但oracle依然无法正常启动
请问,如何操作?因为没有备份,数据库运行在nonarchivelog方式,所以有没有可能恢复到原来的模杨winnt4.0+oracle8.0.5
请问,如何操作?因为没有备份,数据库运行在nonarchivelog方式,所以有没有可能恢复到原来的模杨winnt4.0+oracle8.0.5
把datafiles,control files,log files等copy回原来的目录,
再重新启动数据库服务,这样就可以了
拷贝以上文件到一指定目录下,注意,如果与原目录不一样,需要修改初始化参数文件中的相关参数,尤其要注意control_file参数,必须正确。安装好平台和数据库后,保证相关实例的服务已经启动,否则,使用Oradim创建实例,并启动该服务。登录到具有SYSDBA角色的用户,然后再NOMOUNT状态下,重新创建控制文件(仅是例子,具体语句请参看Oracle Document):
svrmgrl>startup pfile=<init.ora> nomount;
svrmgrl>create controlfile set database <db_name> reuse
log file group 1 ('log_file1a','log_file1b') size 1M,
group 2 ('log_file2a','log_file2b') size 2M
resetlogs
data file 'sysorcl.ora',
'usrorcl.ora',
'rbsorcl.ora',
'tmporcl.ora'
character set zh16cgb231280;
svrmgrl>alter database open resetlogs;
svrmgrl>shutdown;
--必须进行全数据库备份。
由于是病毒导致机器瘫痪,具体当时怎样,客户坚决说是正常关机;我认为,如果时nonarchivelog方式运行,非正常退出(死机,或reboot),datafiles是废物一个;但客户没备份过,希望恢复他们的数据,所以只好一试;我将原来oracle目录,数据文件及相关文件都先备份了一遍;然后装nt,oracle,重新建了个
和原来一样的数据库,可以正常启动;然后我将旧的数据文件,control files等覆盖掉新建立的,数据库unavailable,报1403svrmgrl进步去,说是tns没配好;net8\admin下的东西也是用旧的;
其他目录用新的。
the fetch was +4, indicating that all records have been returned from the SQL query. Action: Terminate processing for the SELECT statement.
TNS-01403 Load: stringCause: Listener logging message.Action: No action required.