Control File (二)重建CONTROLFILE --- NORESETLOG
create controlfile --- noresetlog
由于丢失control01.ctl
alter_karl.log 中显示:
----------------------------------------
ORA-00202: controlfile: '/home/ora_test/oradata/karl/control01.ctl'
ORA-27037: unable to obtain file status
SVR4 Error: 2: No such file or directory
Additional information: 3
ARC1: Thread not mounted
----------------------------------------
现在假设所有的备份都丢失了。则手动创建control.ctl file.(最麻烦,也是很危险的事情,因此要小心谨慎)
- //1.首先关闭数据库。
- SQL> shutdown immediate;
- ORA-01507: database not mounted
- ORACLE instance shut down.
- //2.在操作系统级别备份所有数据文件和联机重做日志文件。(以防万一,不要怕麻烦,万一万一了,你就死定了!)
- //3.借助之前备份在trace文件中的脚本创建ctl file。 /home/ora_test/admin/karl/udump/karl_ora_5037.trc
- SQL> STARTUP NOMOUNT
- ORACLE instance started.
- Total System Global Area 320309728 bytes
- Fixed Size 731616 bytes
- Variable Size 285212672 bytes
- Database Buffers 33554432 bytes
- Redo Buffers 811008 bytes
- //如果联机重做日志没有一同和CONTROL FILE 丢失,需要用NORESETLOG,即保留重做日志中的内容。
- //这样就可以对数据库进行完全恢复。
- //并且使用alter database open;打开DB。
- //如果在控制文件中修改了数据库名称,还需要修改DB_NAME参数值为新的数据库名。
- //注:仅仅在初始化参数文件中修改DB_NAME参数值并不能修改DB的名称,因为DB_NAME同样被记录在control file中。
- CREATE CONTROLFILE REUSE DATABASE "KARL" NORESETLOGS ARCHIVELOG
- -- SET STANDBY TO MAXIMIZE PERFORMANCE
- MAXLOGFILES 50
- MAXLOGMEMBERS 5
- MAXDATAFILES 100
- MAXINSTANCES 1
- MAXLOGHISTORY 226
- LOGFILE
- GROUP 1 '/home/ora_test/oradata/karl/redo01.log' SIZE 100M,
- GROUP 2 '/home/ora_test/oradata/karl/redo02.log' SIZE 100M,
- GROUP 3 '/home/ora_test/oradata/karl/redo03.log' SIZE 100M
- -- STANDBY LOGFILE
- DATAFILE
- '/home/ora_test/oradata/karl/system01.dbf',
- '/home/ora_test/oradata/karl/undotbs01.dbf',
- '/home/ora_test/oradata/karl/cwmlite01.dbf',
- '/home/ora_test/oradata/karl/drsys01.dbf',
- '/home/ora_test/oradata/karl/example01.dbf',
- '/home/ora_test/oradata/karl/indx01.dbf',
- '/home/ora_test/oradata/karl/odm01.dbf',
- '/home/ora_test/oradata/karl/tools01.dbf',
- '/home/ora_test/oradata/karl/users01.dbf',
- '/home/ora_test/oradata/karl/xdb01.dbf'
- CHARACTER SET UTF8
- ;
- Control file created. //此时创建成功。
- //注意:该脚本应当是最新的。是通过alter database backup controlfile to trace ;命令最后一次反初始化生成的。
- //在使用create controlfile 语句创建CTL FILE 时,如果操作不当,可能会损坏数据文件或日志文件。
- $ ls -l control01.ctl //查看新创建的control file
- -rw-r----- 1 ora_test dba 2285568 Apr 12 16:03 control01.ctl
- //4. 在操作系统级别对控制文件进行备份。
- //5. 统一初始化参数文件中的control_files 参数为最新状态。
- //6. 用alter database open;打开数据库
- SQL> select status from v$instance;
- STATUS
- ------------
- MOUNTED
- SQL> alter database open;
- alter database open
- *
- ERROR at line 1:
- ORA-01113: file 1 needs media recovery
- ORA-01110: data file 1: '/home/ora_test/oradata/karl/system01.dbf'
- //需介质恢复,好吧既然报这个错,我会专门写一章来描述有关 控制文件和数据字典的冲突 问题。
- SQL> recover datafile '/home/ora_test/oradata/karl/system01.dbf'
- Media recovery complete.
- SQL> recover database;
- Media recovery complete.
- SQL> alter database open;
- Database altered.
- OK!到此数据库成功恢复control file.
警告:CREATE CONTROLFILE 语句有可能会导致数据文件与重做日志的损坏!
例如:如果在指定数据文件的名称和位置时漏掉某个数据文件,则会使数据库彻底失去该数据文件,甚至导致DB无法使用。
因此,在设置数据文件和重做日志的列表时务必确保正确无误!!
trace 恢复脚本保证最新。
Control File (二)重建CONTROLFILE --- NORESETLOG的更多相关文章
- Effect of Switchovers, Failovers, and Control File Creation on Backups
对dataguard 官方文档里面的这句话不理解,是否能给出一个样例说明: 10.2.0.5的版本号 Effect of Switchovers, Failovers, and Control Fil ...
- 番外:Oracle 中关于 Control File 的备份说明
番外系列说明:该系列所有文章都将作为独立篇章进行知识点讲解,是对其他系列博文进行的补充说明,来自于博客园AskScuti. 主题:关于 Control File 控制文件备份的说明 内容预览:本篇涉及 ...
- ORA-00245 control file backup operation failed 分析和解决
一.问题说明 操作系统: RedHat 5.8 数据库: 11.2.0.3 2节点RAC. 使用RMAN 备份的时候,报如下错误: ORA-00245: control file backup fai ...
- 10g ASM下修改control file的位置
1.查看位置以及name是否正确 SQL> sho parameter name NAME TYPE VALUE ------------------------------------ --- ...
- ORA-00245: control file backup failed; target is likely on a local file system
ORACLE11G RAC alert报错如下:Errors in file /u01/app/oracle/diag/rdbms/dljyzs/dljyzs1/trace/dljyzs1_ora_8 ...
- ORA-00245: control file backup failed; target is likely on a local file system (转载)
环境:DB VERSION: 11.2.0.4.0RAC 2 nodes 问题:邮件显示rman备份失败,查看rman备份日志 Starting Control File and SPFILE Aut ...
- ORA-01207: file is more recent than control file -
OS: [root@yoon ~]# more /etc/oracle-releaseOracle Linux Server release 5.7 DB: Oracle Database 11g E ...
- ORACLE CONTROL FILE 笔记
控制文件包含的信息: 1.数据库的名字 2.联机重做日志文件和数据文件的名字和位置 3.数据库创建的时间戳 4.当前日志的序列号 5.检查点信息 6.备份信息 TIP:数据 ...
- ORA-00214: control file 控制文件版本不一致
故障现象:今日学习oracle控制文件移动和修改,发现本机安装oracle数据库启动时只使用了一个控制文件.如下:SQL> select * from V$controlfile; STATUS ...
随机推荐
- 解决java写入xml报错org.w3c.dom.DOMException:DOM002 Illeg
Exception is -- > org.w3c.dom.DOMException: DOM002 Illegal character 字符不被允许 org.w3c.dom.DOMExcept ...
- epoll 知识总结
poll/select/epoll 对比 http://www.cnblogs.com/apprentice89/p/3234677.html ---有待继续学习 http://blog.chi ...
- 01-03-03【Nhibernate (版本3.3.1.4000) 出入江湖】cascade的测试
相关文章: http://www.cnblogs.com/amboyna/archive/2008/02/18/1072260.html注意上面是hibernate,不是Nhibernate,这解释是 ...
- linux源码阅读笔记 void 指针
void 指针的步长为1,而其他类型的指针的步长与其所定义的数据结构有关. example: 1 #include<stdio.h> 2 main() 3 { 4 int a[10]; 5 ...
- crawler
# !/usr/bin/env python# encoding:UTF-8from util import request_urlimport reimport osimport sys#from ...
- mac上eclipse上配置hadoop
在mac上安装了eclipse之后,配置hadoop其实跟在linux上配置差不多,只是mac上得eclipse和界面和linux上得有点不同. 一:安装eclipse eclipse得安装比较简单, ...
- java基础知识回顾之---java String final类普通方法的应用之“按照字节截取字符串”
/*需求:在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符.但对应的字节数不同,一个汉字占两个字节.定义一个方法,按照最大的字节数来取子串.如:对于“ab你好”,如果取三 ...
- hdu 2065 "红色病毒"问题
指数型母函数的应用 求A B C D 在规定条件下n个元素的排列个数,先写出指数型母函数 G(X) = ( 1 + x + x^2/2! + x^3/3! +... )^2 * ( 1+ x^2/2! ...
- BZOJ 1982 Moving Pebbles
首先我们假设只有两堆, 容易发现当且仅当两堆相等时,先手必败 否则先手必胜 然后我们猜测一下原因: ->当两堆相等时,无论先手怎么做,后手总能使两堆相等,且必败态为0,0 推广一下: 当所有的石 ...
- 转一个distinct用法,很有帮助
转一个distinct用法,很有帮助 (2011-12-01 15:18:11) 转载▼ 标签: 杂谈 分类: mysql复制 在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提 ...