ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle数据库的备份与恢复

oracle数据库的备份与恢复

原创 Linux操作系统 作者:xingyun56 时间:2008-04-19 17:24:59 0 删除 编辑

1:今天我在oracle10g上面做了一个冷备份,首先:coldBack.sql

Remark Set SQl*Plus variables to manipulate output
set feedback off heading off verify off trimspool off
set pagesize 0 linesize 200
Remark Set SQL*Plus user variables used in this script
define dir='E:\database\H\R'
define copyDate='D:\backup_commands.sql'
prompt *** Spooling to ©Date
Remark Create a command file with file backup commands
spool ©Date
select 'host copy '||name||' &dir' from v$datafile order by 1;
select 'host copy '||member||' &dir' from v$logfile order by 1;
select 'host copy '||name||' &dir' from v$controlfile order by 1;
select 'host copy '||name||' &dir' from v$tempfile order by 1;
spool off;
Remark Shutdown the database cleanly
shutdown immediate;
Remark Run the copy file commands from the operating system
@©Date
Remark Start the database again
startup;

在数据库关闭状态下,把你的数据文件删除,删除以后用startup mount;来启动数据库,把你备份数据文件拷贝到你删除数据文件的地方,这时我们用下面的命令来查看数据库的SID是否一致:

alter session set NLS_DATE_FORMAT='HH24:MI:SS';
select file#,status,checkpoint_change#,checkpoint_time,last_change#,last_time from v$datafile;
select group#,sequence#,status,first_change#,first_time from v$log order by first_change#;

如果得到的SID是一致的哪么我们就可以用这个命令来打开数据库了:

alter database open;如果在打开的过程中出现了这样的错误:

ORA-01113: 文件 5 需要介质恢复

ORA-01110: 数据文件 5: 'D:\ORACLE\PRODUCT\10.2.0\DBFILES\DSBI\DS.ORA'

哪么我们可以用下面的命令来运行:

set autorecovery on;

recover datafile 5;这个5就是3中提到的数据文件 5;

这时再用:alter database open;就可以打开数据库了。

接下来我会完成oracle10g数据库的各种备份.......

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/13805349/viewspace-244152/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: buffer命中率
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2008-04-10

  • 博文量
    4
  • 访问量
    4068