--查看控制文件路径

show parameter control_files;

--控制文件的备份,三种方式
1)使用OS命令进行拷贝;
1)open状态下,使用alter database命令生成控制文件副本;
2)open状态下,使用alter database backup controlfile to trace命令将控制文件备份到跟踪文件;

--控制文件的恢复,两种方式
1)mount状态下,使用recover database using backup controlfile
2)mount状态下,生成跟踪文件并进行恢复

--备份ctl

SQL> alter database backup controlfile to 'D:\Oracle\backup\control_bak.ctl';

--备份trace脚本

SQL> alter database backup controlfile to trace as 'D:\Oracle\backup\ctl.sql';

--从ctl恢复

SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             306187140 bytes
Database Buffers          297795584 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。

SQL> select * from v$log;

GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS
---------- ---------- ---------- ---------- ---------- --- ---------
FIRST_CHANGE# FIRST_TIME
------------- --------------
         1          1          8   52428800          2 YES INACTIVE
      1157323 30-11月-12

3          1          9   52428800          2 YES INACTIVE
      1158104 30-11月-12

2          1         10   52428800          2 NO  CURRENT
      1158418 30-11月-12

SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 1158810 (在 11/30/2012 15:10:32 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\DBTEST\ARCHIVELOG\2012_11_30\O1_MF_

1_10_%U_.ARC
ORA-00280: 更改 1158810 (用于线程 1) 在序列 #10 中
指定日志: {=suggested | filename | AUTO | CANCEL}
D:\Oracle\product\10.2.0\oradata\dbtest\redo02.log
已应用的日志。
完成介质恢复。
SQL> alter database open resetlogs;

数据库已更改。

--从trace脚本恢复(nomount状态,去掉前面的空格,蓝色部分可以不要)

SQL>@'D:\Oracle\backup\ctl.sql';

CREATE CONTROLFILE REUSE DATABASE "DBTEST" NORESETLOGS  ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 (
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\REDO01A.LOG',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\REDO01.LOG'
) SIZE 50M,
GROUP 2 (
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\REDO02.LOG',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\REDO02A.LOG'
) SIZE 50M,
GROUP 3 (
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\REDO03.LOG',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\REDO03A.LOG'
) SIZE 50M
DATAFILE
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\SYSTEM01.DBF',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\UNDOTBS01.DBF',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\SYSAUX01.DBF',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\USERS01.DBF',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBTEST\EXAMPLE01.DBF'
CHARACTER SET ZHS16GBK;

SQL> alter database open;

注意:脚本语句前面不要留空格。

Oracle基础 06 控制文件 controlfile的更多相关文章

  1. Oracle控制文件多路复用以及Oracle备份重建控制文件

    控制文件中记录了oracle数据库的物理结构,也就是记录了数据库数据文件和日志文件的位置,控制文件中还记录了多种SCN,用这些SCN来确定数据文件和日志文件是否是正确的.如果不正确那么数据库就需要恢复 ...

  2. Oracle 控制文件(CONTROLFILE)

    一.Oracle 控制文件 为二进制文件,初始化大小由CREATE DATABASE指定,可以使用RMAN备份 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等 ...

  3. 【Oracle】RAC控制文件多路复用

    1.—关闭数据库,各个节点都要关闭: [oracle@rac1 ~]$ srvctl stop database -d racdb -o immediate 2.—启动任一节点到nomount状态: ...

  4. Oracle RMAN 恢复控制文件到指定的路径

    Oracle 数据库通过RMAN恢复控制文件到指定的路径 --------------------------------------------------------- 先查询备份集信息,再指定备 ...

  5. oracle 11g 添加控制文件

    OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...

  6. 【ORACLE】重写控制文件

    [oracle@rac01 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Thu Mar 15 23:45:02 ...

  7. Oracle体系结构之控制文件的多路复用技术

    在Windows操作系统中,如果注册表文件被损坏了,就会影响操作系统的稳定性.严重的话,会导致操作系统无法正常启动.而控制文件对于Oracle数据库来说,其作用就好象是注册表一样的重要.如果控制文件出 ...

  8. oracle之二控制文件

    控制文件 3.1 控制文件的功能和特点:       1)定义数据库当前物理状态,不断在往controlfile写入[SCN等]       2)维护数据的一致性       3)是一个二进制文件   ...

  9. oracle通过修改控制文件scn推进数据库scn

    数据库当前scn 代码如下 复制代码 idle> select checkpoint_change# from v$database; CHECKPOINT_CHANGE#----------- ...

随机推荐

  1. 容器基础(八): 使用docker swarm部署程序

    环境 基于上一节的env/server:v0.1, env/worker:v0.1镜像, 在基于debian8.2的两台机器上测试部署docker swarm. docker service部署 ➜ ...

  2. Go基础篇【第8篇】: 内置库模块 bytes [二]

    type Reader ¶ type Reader struct { // 内含隐藏或非导出字段 } Reader类型通过从一个[]byte读取数据,实现了io.Reader.io.Seeker.io ...

  3. JavaSE复习(三)异常与多线程

    异常 分类 编译时期异常:checked异常. 在编译时期,就会检查,如果没有处理异常,则编译失败.(如日期格式化异常) 运行时期异常:runtime异常. 在运行时期,检查异常.在编译时期,运行异常 ...

  4. 软工实践 - 第二十六次作业 Beta 冲刺(4/7)

    队名:起床一起肝活队 组长博客:https://www.cnblogs.com/dawnduck/p/10124816.html 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过 ...

  5. unity 归纳

    1.获取控件四个角在屏幕上的坐标 Vector3[] corners = new Vector3[]; gameObject.GetComponent<RectTransform>().G ...

  6. PAT 甲级 1002 A+B for Polynomials

    https://pintia.cn/problem-sets/994805342720868352/problems/994805526272000000 This time, you are sup ...

  7. c++ map 和 unordered_map的区别

    unordered_map和map类似,都是存储的key-value的值,可以通过key快速索引到value.不同的是unordered_map不会根据key的大小进行排序, 存储时是根据key的ha ...

  8. http请求整理

    终于又回来了,先来简单整理一波http请求的信息.对于前端来说,不管是在面试还是在实际项目中,都有必要去了解一些关于http的信息. http请求包含三部分:请求行request line.请求头re ...

  9. struts2的验证

    1.原理 当浏览器向服务器提交表单数据时,在服务器端需要对表单数据的有效性进行校验. “校验方法”会在“业务方法”之前调用. 2.实现验证的两种方式 struts2校验的两种实现方法: 1. 手工编写 ...

  10. 【题解】HAOI2008木棍分割

    对于这道题目的两问,第一问直接二分答案求出最短长度.关键在于第二问应当如何求:建立dp方程,dp[i][j]代表到第i个分界线,切了j次(强制在第i处切一刀.这样就不会对后面的状态产生影响).状态转移 ...