Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

81

积分

0

好友

4

主题
1#
发表于 2012-5-15 16:25:52 | 查看: 5585| 回复: 3
最近有台数据库每天凌晨就有datafile处于recover状态,数据库版本10204,安装在windows 2003上,想从OS层面寻求帮助,但是公司的流程很繁琐,真要等到系统管理员的回复黄花菜都凉了。
于是想写一个脚本,定点检查recover状态的数据文件然后执行recover datafile。
但是,oracle不支持execute immediate 'recover datafile ‘|| file#语法,请问Mallean有没有其他解决思路(仅限于脚本本身)?

谢谢
2#
发表于 2012-5-15 23:06:07
估计要生成到shell文件,然后执行shell文件

win下面bat处理起来,可能比较麻烦

回复 只看该作者 道具 举报

3#
发表于 2012-5-15 23:18:42
请不要拼错我的名字 , 是MACLEAN  MACLEAN   , 跟我读 是 麦克林恩------  麦克林恩 麦克林恩------  麦克林恩   麦克林恩------  麦克林恩




recover.sql 会自动生成 recover datafile的句子 并 执行


connect / as sysdba
set echo off
set veri off
set feedback off
set termout on
set heading off
set linesize 1500
set termout off
spool recovery_generate.sql
select 'recover datafile '||FILE#||' ;' from v$recover_file;
spool off
set termout on;
set echo on
@recovery_generate






使用例子:


SQL> alter database datafile 8 offline drop;

Database altered.

SQL>  select 'recover datafile '||FILE#||' ;' from v$recover_file;

'RECOVERDATAFILE'||FILE#||';'
--------------------------------------------------------------------------------
recover datafile 8 ;



SQL> @recover.sql


SQL> recover datafile 8 ;
Media recovery complete.


SQL> select * from v$recover_file;

no rows selected

回复 只看该作者 道具 举报

4#
发表于 2012-5-16 10:29:05
多谢 麦克林恩
原来是个英文名字啊 我一直以为是你随便起的网名 不好意思哦 嘿嘿
不过比我的名字好念多了

[ 本帖最后由 myownstars 于 2012-5-16 10:41 编辑 ]

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-25 13:49 , Processed in 0.045431 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569