昨天与一位有着20年的IT经验、10年Oracle经验的沈工聊天,其中提到oracle的后台进程有哪些都有各有什么作用,记着自己回答得不是很好,作为一个专职DBA这些很基础的理论知识学得不够扎实和牢固,众所周知,oracle的控制文件非常重要,我却用了
SQL>alter session set events ‘immediate trace name controlfile level 8’;
OR
SQL>alter database backup controlfile to trace;
严格的来说,这不是控制文件的备份,只是将当前控制文件转储,后续再可以用来重建控制文件,更严重的是这个命令我还写错了,大家也许会笑话我,不过没关系,我敢正视自己的问题和存在的不足,相信自己假以十日,我会做得更好。控制文件的备份方法有很多:
1. 如果条件允许,可以正常关闭数据库后用OS级的CP命令来备份。
2. 在全备份和其它备份时,指定include current controlfile子句。
3. 使用RMAN的如下功能:
RMAN>configure controlfile autoback on;
RMAN>backup current controlfile format ‘/path/control%s.ctl’;
如果是10g,还可以,
RMAN>backup as copy controlfile format ‘/path/control01.ctl’;
4. 在RMAN进行控制文件同步或备份的时候,oracle会自动执行控制文件的快照,这个快照在特殊情况下,也可以拿来恢复,快照的默认路径:$ORACLE_HOME/dbs,
可以用如下的命令更改默认路径:
RMAN>configure snapshot controlfile name to ‘/path/snapcf_<ORACLE_SID>.cf’;
在configure controlfile autoback on下,现在再备份数据库,备份集中将不包含自动的控制文件备份,自动控制文件备份发生在备份完成之后,现在的控制文件备份和快照都是来自备份完成之后。
注意:
Read the rest of this entry »