执行备份的方式是使用操作系统复制的方法
1.在E盘的根目录下建立backup文件夹,将文件备份至此文件夹.
2.编辑SQL程序代码: close_db_backup.sql
connect / as sysdba
set feedback off -- 设置反馈信息关闭
set head off -- 报头输出关闭
set termout off -- SQL执行结果提示关闭
spool close_db_backup.bat
select' copy ' | |name| |' e:\backup'from v$datafile
union
select' copy ' | |name| |' e:\backup'from v$controlfile
union
select' copy ' | |member| |' e:\backup'from v$logfile
/
spool off
set feedback on
set head on
set termout on
shutdown immediate -- 数据库立刻关闭
host close_db_backup.bat -- 执行批处理备份文件
connect /as sysdba -- 启动数据库
startup
exit
3.以system角色进入SQL*Plus,执行@'e:\backup\close_db_backup.sql'.
完全恢复用于数据文件或控制文件毁损或丢失,不能恢复Control Files, Redo Log Files, Password Files, Parameter Files.
进行恢复操作时,Datafile是离线的,而且所有Archived Log Files必须都是好的.
1.登陆SQL*Plus
sqlplus /nolog
connect sysdba/sysdba as sysdba;
2.查看数据库状态
select status from v$instance;
3.查看文件状态
col name for a52
col error for a12
select name, error, status, recover from v$datafile_header;
4.查看dba的文件代号,文件名和表空间名
col file_name for a52
col tablespace_name for a16
select file_id, file_name, tablespace_name from dba_data_files;
5.将有问题的文件Off-Line
alter database datafile "文件编号" offline;
6.将先前备份好的文件copy到毁损或丢失处.
7.执行介质恢复文件
recover datafile "文件编号";
8.将数据文件变更为Online状态
alter database datafile "文件编号" Online;