oracle之二控制文件
控制文件
3.1 控制文件的功能和特点:
1)定义数据库当前物理状态,不断在往controlfile写入[SCN等]
2)维护数据的一致性
3)是一个二进制文件
4)在mount阶段被读取
5)记录RMAN备份的元数据[账本]
查看database控制文件位置:
19:02:27 SQL> show parameter control_file
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string /u01/oradata/timran11g/control01.
ctl, /u01/oradata/timran11g/contr
ol02.ctl, /u01/oradata/timran11g/
control03.ctl
19:02:42 SQL> select name from v$controlfile;
NAME
---------------------------------------------------------------------------------------------------
/u01/oradata/timran11g/control01.ctl
/u01/oradata/timran11g/control02.ctl
/u01/oradata/timran11g/control03.ctl
desc v$controlfile_record_section控制文件详细信息
3.2 控制文件多元化
1)配置多个control_files,控制文件最好有三个,是相互镜像的(shutdown下cp命令复制即可),然后修改spfile中的control_files参数,Oracle建议分配在不同的物理磁盘上。
*考点:最多可以有8个control files多路复用。
19:10:25 SQL> alter system set control_files='/u01/oradata/timran11g/control01.ctl','/u01/disk1/control02.ctl','/u01/disk1/control03.ctl' scope=spfile;
System altered.
2)三个control文件要一致(同一版本,scn相同),本来就是镜像关系
-rw-r----- 1 oracle oinstall 7356416 07-16 20:00 control01.ctl
-rw-r----- 1 oracle oinstall 7356416 07-16 20:01 control02.ctl
-rw-r----- 1 oracle oinstall 7356416 07-16 20:01 control03.ctl
3)控制文件查看:v$controlfile 、show parameter controlfile、 v$parameter
3.3 控制文件的重建与备份
1)trace 文件: 可以在mount或open模式下生成一个脚本,用于控制文件重建。
19:59:24 SQL> alter database backup controlfile to trace; //生成的trace 文件在udump的最新trc文件里
或者 SQL> alter database backup controlfile to trace as '/u01/con.trace'; //存到自己起的文件名里。
2)binary 文件:控制文件的备份
20:00:20 SQL> alter database backup controlfile to '/u01/oradata/timran11g/con.bak';
3.4 控制文件手工恢复
控制文件一但损坏,系统将崩溃或死机。
1)单个文件损坏了:数据库关闭,使用操作系统命令复制其副本到指定的位置。
2)所有的控制文件丢失,(正常关闭,shutdown immediate后删除控制文件)
假设控制文件的备份也没有,利用前面做的trace文件重新生成控制文件
在nomount 状态下执行trace脚本
15:37:16 SQL> startup force nomount
ORACLE instance started.
SQL>
CREATE CONTROLFILE REUSE DATABASE "TIMRAN11" NORESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 '/u01/oradata/timran11g/redo01.log' SIZE 50M,
GROUP 2 '/u01/oradata/timran11g/redo02.log' SIZE 50M,
GROUP 3 '/u01/oradata/timran11g/redo03.log' SIZE 50M
DATAFILE
'/u01/oradata/timran11g/system01.dbf',
'/u01/oradata/timran11g/sysaux01.dbf',
'/u01/oradata/timran11g/user01.dbf',
'/u01/oradata/timran11g/example01.dbf',
'/u01/oradata/timran11g/test01.dbf',
'/u01/oradata/timran11g/undotbs01.dbf'
CHARACTER SET ZHS16GBK
;
可以看到执行后三个控制文件又重新建立了。
说明:这个重建控制文件的过程主要有两大部分内容:
第一部分是脚本中的可见信息:1)定义了几个参数的最大值,2)在线日志的物理信息,3)数据文件的物理信息,4)使用的字符集。
第二部分是隐含的不可见信息,比如SCN信息,重建最关键的是将当前所有数据文件头部的最新SCN信息复制到了控制文件中。以便接下来打开数据库。
SQL> select file#,checkpoint_change# from v$datafile; //从控制文件读出
FILE# CHECKPOINT_CHANGE#
---------- ------------------
1 5629150
2 5629150
3 5629150
4 5629150
5 5629150
6 5629150
SQL> select file#,checkpoint_change# from v$datafile_header; //从数据文件读出
FILE# CHECKPOINT_CHANGE#
---------- ------------------
1 5629150
2 5629150
3 5629150
4 5629150
5 5629150
6 5629150
15:39:49 SQL> alter database open;
2)利用控制文件备份(手动备份或RMAN备份都可以)恢复控制文件。(有点复杂,留在053备份恢复中再介绍吧)
3)控制文件恢复后里面的记录会丢失,如归档的记录等[SQL> select name from v$archived_log;]
oerr ora 错误号 查看错误
转载于:https://www.cnblogs.com/jinxf/p/9166729.html
oracle之二控制文件相关推荐
- oracle重建控制文件流程,ORACLE之重建控制文件
当这些信息更改或者变动时,oracle数据库会自动把最新信息更新到controlfile文件里面. 启动数据库时,Oracle从初始化参数文件(pfile/spfile)中获得控制文件的名字及位置,打 ...
- oracle 控制文件冗余,Oracle 添加冗余控制文件 for RAC On Linux
============================== 萌哒萌哒的分割线=============================== 注:添加冗余控制文件期间需要有关库操作,需注意!!! 备份 ...
- oracle如何打开控制文件,看一看oracle控制文件里面的内容
众所周知,oracle数据库的控制文件是很小的二进制文件,是打不开的,打开了也是乱码,但可以通过转储文件来获得控制文件的详细信息. alter database backup controlfile ...
- oracle 控制文件在哪里设置_更改Oracle默认的控制文件设置
环境:Windows XP SP2 32位 Oracle 9.2.0.1 32位 创建数据库后,Oracle默认的3个控制文件都在c:/oracle/oradata/SID/下,3个鸡蛋都在一个篮子里 ...
- oracle重新生成控制文件,Oracle重建控制文件的语法
Oracle在控制文件丢失的情况下,有时我们只能重建控制文件,具体语法例如: CREATE CONTROLFILE REUSE DATABASE "SQUAN" NORESETLO ...
- Oracle体系结构之控制文件的多路复用技术
在Windows操作系统中,如果注册表文件被损坏了,就会影响操作系统的稳定性.严重的话,会导致操作系统无法正常启动.而控制文件对于Oracle数据库来说,其作用就好象是注册表一样的重要.如果控制文件出 ...
- oracle 新增加控制文件,Oracle增加控制文件副本
1.文档目标 新建的数据库只有一个控制文件副本,希望增加控制文件副本到不同位置,防止控制文件发生损坏. 2.修改control_files参数 # 如果使用了OMF则可以在修改参数时只指定路径,无需指 ...
- 还原oracle控制文件位置,oracle 11.2 控制文件还原
****************************************** 1.控制文件备份分类 ****************************************** 通常分 ...
- oracle控制文件的复用,ORACLE 10g ASM 控制文件多路复用
1> 检查数据库,查看控制文件存放路径 SQL> startup ORACLE instance started. Total System Global Area 230686720 ...
最新文章
- javascript里面RegExp的exec函数的总结
- c语言编程游戏界面,震惊!!!一个关于c语言图形化界面编程的小游戏-Go语言中文社区...
- XamarinSQLite教程Xamarin.iOS项目中打开数据库文件
- docker安装mysql指定_Docker安装MySql,并且使用外部客户端链接
- input输入框自动消除空格
- JavaScript中执行环境和栈
- java 使用vsphere 创建虚拟机‘_Java数组的创建及使用
- maven实战 源码_Docker与Jib(maven插件版)实战
- 简易呼吸灯c语言程序,51单片机(呼吸灯)C语言版
- hive sql 替换指定的字符串
- 混合线性模型学习笔记4
- Linux与Windows分区格式详解
- matlab反双曲函数表达,matlab求反正切
- linux环境下解压rar文件
- 弘辽科技:淘宝宝贝上下架有哪些规则?该如何优化?
- VIVADO中IO管脚分配 IO PLANING
- sa结构组网方式_5G SA网络架构及组网规范
- Java~通讯录系统
- POJ-2001-Shortest Prefixes
- oracle 11g 百度云盘,Oracle 11.2.0.1 For Linux 64+32bit 数据库介质 百度云盘下载
热门文章
- c语言邻接表的构建_c语言数据结构--图的邻接矩阵和邻接表操作的基本操作
- 台式电脑一般价钱多少_让你少走弯路,看我怎么花低价钱配出高配置的台式电脑的...
- 你知道怎么在生产环境下部署tomcat吗?,灵魂拷问
- docker搭建ssr
- 【工作感悟】mysql授权root远程访问
- VScode+SSH Remote多级连跳配置
- python【数据结构与算法】武松打虎问题(贪心)
- python【OS操作系统库】Python的os模块大宝剑(全)
- 【Network Security!】NTFS安全权限(看不懂你来打我)
- linux多线程求和_211渣硕,海投200+家Java岗(面40,过7),收获多份offer!