丢失全部控制文件,noresetlogs重建控制文件,alter database open
測试2:
(1)一致性的全备
SQL> shutdown immediate;
$ cp -rf $ORACLE_BASE/oradata/boss/*.dbf /oradata/bossbak/20140610allbackup
$ cp -rf $ORACLE_BASE/oradata/boss/*.log /oradata/bossbak/20140610allbackup
$ cp -rf $ORACLE_BASE/oradata/boss/*.ctl /oradata/bossbak/20140610allbackup
$ cp -rf /oradata/boss/control01.ctl /oradata/bossbak/20140610allbackup
$ cp -rf $ORACLE_HOME/dbs/spfileboss.ora /oradata/bossbak/20140610allbackup
$ cd /oracle/flash_recovery_area/BOSS/archivelog/2014_06_10/
$ rm -rf *
(2)查看数据库的信息
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
UNDOTBS1 ONLINE
SYSAUX ONLINE
TEMP ONLINE
USERS ONLINE
EXAMPLE ONLINE
TESTTBS01 ONLINE
TESTTBS02 OFFLINE
TESTTBS03 READ ONLY
SQL> select table_name,status,tablespace_name from user_tables where tablespace_name like 'TESTTBS%';
TABLE_NAME STATUS TABLESPACE_NAME
------------------------------ -------- ------------------------------
TEST01 VALID TESTTBS01
BOSS_NEW_TEST VALID TESTTBS01
SQL> select
2 ts.name "表空间名"
3 , df.file# "文件号"
4 , df.checkpoint_change# "检查点"
5 , df.name "文件名称"
6 from v$tablespace ts,v$datafile df
7 where ts.ts#=df.ts#
8 order by df.file#;
表空间名 文件号 检查点 文件名称
------------------------------ ---------- ---------- ----------------------------------------
SYSTEM 1 708505 /oracle/oradata/boss/system01.dbf
UNDOTBS1 2 708505 /oracle/oradata/boss/undotbs01.dbf
SYSAUX 3 708505 /oracle/oradata/boss/sysaux01.dbf
USERS 4 708505 /oracle/oradata/boss/users01.dbf
EXAMPLE 5 708505 /oracle/oradata/boss/example01.dbf
TESTTBS01 6 708505 /oracle/oradata/boss/testtbs01_01.dbf
TESTTBS01 7 708505 /oracle/oradata/boss/testtbs01_02.dbf
TESTTBS02 8 652783 /oracle/oradata/boss/testtbs02_01.dbf
TESTTBS03 9 652799 /oracle/oradata/boss/testtbs03_01.dbf
(3)备份控制文件的trace文件
SQL> alter database backup controlfile to trace as '/oradata/bossbak/20140610allbackup/control1.trace' noresetlogs;
SQL> alter database backup controlfile to trace as '/oradata/bossbak/20140610allbackup/control2.trace';
SQL> alter database backup controlfile to trace as '/oradata/bossbak/20140610allbackup/control3.trace' resetlogs;
(4)创建表空间testtbs04,在表空间testtbs04创建表test02,然后直接shutdown abort
SQL>
create tablespace testtbs04
datafile '/oracle/oradata/boss/testtbs04_01.dbf' size 10m
autoextend on next 1m maxsize unlimited
logging
extent management local autoallocate
blocksize 8k
segment space management auto
flashback on;
Tablespace created.
SQL> create table test02 (id number, name varchar2(30)) tablespace testtbs04;
SQL> insert into test02 values(1,'nnnnn');
SQL> insert into test02 values(2,'mmmmm');
SQL> commit;
(5)删除全部控制文件
$ rm -rf *.ctl
SQL> shutdown abort;
ORACLE instance shut down.
SQL> startup open;
ORA-00205: error in identifying control file, check alert log for more info
(6)编辑trace文件
$ cp -rf control1.trace control.trace
CREATE CONTROLFILE REUSE DATABASE "BOSS" NORESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 '/oracle/oradata/boss/redo01.log' SIZE 50M,
GROUP 2 '/oracle/oradata/boss/redo02.log' SIZE 50M,
GROUP 3 '/oracle/oradata/boss/redo03.log' SIZE 50M
DATAFILE
'/oracle/oradata/boss/system01.dbf',
'/oracle/oradata/boss/undotbs01.dbf',
'/oracle/oradata/boss/sysaux01.dbf',
'/oracle/oradata/boss/users01.dbf',
'/oracle/oradata/boss/example01.dbf',
'/oracle/oradata/boss/testtbs01_01.dbf',
'/oracle/oradata/boss/testtbs01_02.dbf',
'/oracle/oradata/boss/testtbs04_01.dbf'
CHARACTER SET ZHS16GBK
;
SQL> CREATE CONTROLFILE REUSE DATABASE "BOSS" NORESETLOGS ARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 '/oracle/oradata/boss/redo01.log' SIZE 50M,
9 GROUP 2 '/oracle/oradata/boss/redo02.log' SIZE 50M,
10 GROUP 3 '/oracle/oradata/boss/redo03.log' SIZE 50M
11 DATAFILE
12 '/oracle/oradata/boss/system01.dbf',
13 '/oracle/oradata/boss/undotbs01.dbf',
14 '/oracle/oradata/boss/sysaux01.dbf',
15 '/oracle/oradata/boss/users01.dbf',
16 '/oracle/oradata/boss/example01.dbf',
17 '/oracle/oradata/boss/testtbs01_01.dbf',
18 '/oracle/oradata/boss/testtbs01_02.dbf',
19 '/oracle/oradata/boss/testtbs04_01.dbf'
20 CHARACTER SET ZHS16GBK
21 ;
Control file created.
SQL> alter system archive log all; ##假设没有运行归档,那么不须要recover database
SQL> select status from v$instance;
STATUS
------------
MOUNTED
SQL> recover database;
Media recovery complete.
SQL> alter database open;
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
UNDOTBS1 ONLINE
SYSAUX ONLINE
TEMP ONLINE
USERS ONLINE
EXAMPLE ONLINE
TESTTBS01 ONLINE
TESTTBS02 OFFLINE
TESTTBS03 READ ONLY
TESTTBS04 ONLINE
SQL> select * from test02;
ID NAME
---------- ------------------------------
1 nnnnn
2 mmmmm
丢失全部控制文件,noresetlogs重建控制文件,alter database open的更多相关文章
- 【练习】trace文本重建控制文件
这个小练习是针对控制文件全部丢失后怎么能快速的重建一个控制文件,快速的起库 1.备份控制文件到trace下 SQL> alter database backup controlfile to t ...
- Oracle控制文件多路复用以及Oracle备份重建控制文件
控制文件中记录了oracle数据库的物理结构,也就是记录了数据库数据文件和日志文件的位置,控制文件中还记录了多种SCN,用这些SCN来确定数据文件和日志文件是否是正确的.如果不正确那么数据库就需要恢复 ...
- Oracle 重建控制文件一例
环境:OEL 5.7 + Oracle 10.2.0.5 背景:在Oracle的运维过程中,时常会遇到一些场景是需要重建控制文件才可以解决的.本文的场景可以通过复制控制文件到新路径,运行一段时间后,再 ...
- RAC环境下控制文件损坏重建过程
处理过程参考了: https://blogs.oracle.com/Database4CN/entry/%E5%A6%82%E4%BD%95%E9%87%8D%E5%BB%BArac%E7%9A%84 ...
- 【翻译自mos中文文章】重建控制文件的方法
重建控制文件的方法 參考原文: How to Recreate a Controlfile (Doc ID 735106.1) 适用于: Oracle Database - Enterprise Ed ...
- 【翻译自mos文章】在重建控制文件之前应该考虑的事情
在重建控制文件之前应该考虑的事情 来源于: Things to Consider Before Recreating the Controlfile (文档 ID 1475632.1) 适用于: Or ...
- Oracle 重建控制文件
前些天在做Oracle数据库恢复测试时,因为一些异常操作导致控制文件出了问题,数据库无法正常使用,这里记录一下重建控制文件的操作 一.使用sysdba用户登入数据库 此时普通用户已无法链接数据库 二. ...
- 重建控制文件ORA-12720
重建过程出错:ORA-01503: CREATE CONTROLFILE failedORA-12720: operation requires database is in EXCLUSIVE mo ...
- oracle之 利用 controlfile trace文件重建控制文件
一. 11g RAC 重建控制文件 1. --"create controlfile"命令生成到追踪文件中:alter database backup controlfile to ...
随机推荐
- 容器的范围 .xml
pre{ line-height:1; color:#f0caa6; background-color:#2d161d; font-size:16px;}.sysFunc{color:#e54ae9; ...
- 【LeetCode】6 - ZigZag Conversion
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like ...
- STL map 用法
首先make_pair Pairs C++标准程序库中凡是"必须返回两个值"的函数, 也都会利用pair对象 class pair可以将两个值视为一个单元.容器类别map和mul ...
- 初识MFC学习——Hello World
MFC(Microsoft Foundation Classes),是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows的API,并且包含一个应用程序框架, ...
- 第一百九十七-第二百天 how can I 坚持
又是四天,how 快. 第一天,晚上要坐车回济南,没下班就躁动了.晚上高铁竟然是知道济南西,中间没有停,到济南九点半,去刘松家又吃了一顿.喝了不少酒.挺爽. 第二天,早上五点多就醒了,睡的婚床,哈哈, ...
- 如何使cron任务出错时发邮件
如果设置了 MAILTO,cron就会将任务的标准输出和标准错误输出重定向到邮箱(即发送邮件).但如果只想接到错误报警邮件 -- 即任务正常执行时不发送,只在出错时发送 -- 应该怎么实现呢? 方法很 ...
- 异常处理与MiniDump详解(转)
一. 综述 总算讲到MiniDump了. Dump有多有用我都无法尽数,基本上属于定位错误修复BUG的倚天剑.(日志可以算是屠龙刀)这些都是对于那些不是必出的BUG,放在外面运行的时候出现的BUG ...
- CentOS(RedHat) 6.2 Samba share权限拒绝访问
在实现<CentOS(RedHat) 6.2下Samba配置>的过程中,发现CentOS 6.2的Samba share总是没有权限写文件,已经试过在Windows XP/Windows ...
- [原创]Devexpress XtraReports 系列 4 创建多栏报表
昨天我们完成了 [原创]Devexpress XtraReports 系列 3 创建主从报表 今天我们继续学习新的一种报表模式:多栏报表.(Demo源码,数据库最后附上) 或许很多人会问什么是多栏报表 ...
- CSS元素水平居中和垂直居中的方法大全
水平居方法: 1.最熟悉的是给元素定义一个宽度,然后使用margin: body{ width:960px; margin:0 auto;}这个是当我们的定义元素的宽度时显现的,如果我们不能定义宽度时 ...