Oracle控制文件
2016-05-19 13:27
423 查看
在Oracle中,控制文件是数据库挂载时所使用的文件,控制文件丢失或损坏,实例会崩溃,其中参数文件记录控制文件的位置;
在实例启动到nomount后,如果db_names参数与控制文件中记录的数据库名一致,才可以mount,否则会报错;
实例要启动到mount,会判断控制文件的位置和个数以及一致性;
控制文件记录了数据库实例的结构及行为等内容,包括数据库的数据文件、重做日志文件、数据库的名称、数据库创建信息、表空间信息、数据文件的状态、日志文件信息、备份信息、检查点信息等;
一个数据库至少要有一个控制文件,最多8个,一般设置为2个,放在不同的路径下。
在管理控制文件的时候,DBA需要关注的问题:
1、控制文件的个数
2、控制文件版本问题
3、控制文件备份(冷备、热备)
4、控制文件大小控制在100M以内
下面是Oracle中和控制文件有关的视图:
V$DATABASE 记录控制文件里读取到的数据库信息
V$CONTROLFILE 记录控制文件详细信息
V$CONTROLFILE_RECORD_SECTIONG 记录控制文件记录的内容
V$PARAMETER 记录CONTROL_FILES参数对应的控制文件参数
比如我们可以在V$CONTROLFILE中查看控制文件的位置:
SQL> select name from v$controlfile;
NAME
-----------------------------------------------
/u01/oracle/oradata/wyzc/control01.ctl
/data1/oracle/oradata/control02.ctl
/data2/oracle/oradata/control03.ctl
如果我们想了解控制文件里都记录了哪些信息,可以通过V$CONTROLFILE_RECORD_SECTIONG
SQL> select type from v$controlfile_record_section;
TYPE
----------------------------
DATABASE
CKPT PROGRESS
REDO THREAD
REDO LOG
DATAFILE
FILENAME
TABLESPACE
TEMPORARY FILENAME
RMAN CONFIGURATION
LOG HISTORY
OFFLINE RANGE
ARCHIVED LOG
BACKUP SET
BACKUP PIECE
BACKUP DATAFILE
BACKUP REDOLOG
DATAFILE COPY
BACKUP CORRUPTION
COPY CORRUPTION
DELETED OBJECT
PROXY COPY
BACKUP SPFILE
DATABASE INCARNATION
FLASHBACK LOG
RECOVERY DESTINATION
INSTANCE SPACE RESERVATION
REMOVABLE RECOVERY FILES
RMAN STATUS
THREAD INSTANCE NAME MAPPING
MTTR
DATAFILE HISTORY
STANDBY DATABASE MATRIX
GUARANTEED RESTORE POINT
RESTORE POINT
DATABASE BLOCK CORRUPTION
ACM OPERATION
FOREIGN ARCHIVED LOG
37 rows selected.
在Oracle 11g R2版本中,控制文件共记录了37种内容,如上。
更多精彩Oracle内容 请关注我:http://dwz.cn/3ng5UY
在实例启动到nomount后,如果db_names参数与控制文件中记录的数据库名一致,才可以mount,否则会报错;
实例要启动到mount,会判断控制文件的位置和个数以及一致性;
控制文件记录了数据库实例的结构及行为等内容,包括数据库的数据文件、重做日志文件、数据库的名称、数据库创建信息、表空间信息、数据文件的状态、日志文件信息、备份信息、检查点信息等;
一个数据库至少要有一个控制文件,最多8个,一般设置为2个,放在不同的路径下。
在管理控制文件的时候,DBA需要关注的问题:
1、控制文件的个数
2、控制文件版本问题
3、控制文件备份(冷备、热备)
4、控制文件大小控制在100M以内
下面是Oracle中和控制文件有关的视图:
V$DATABASE 记录控制文件里读取到的数据库信息
V$CONTROLFILE 记录控制文件详细信息
V$CONTROLFILE_RECORD_SECTIONG 记录控制文件记录的内容
V$PARAMETER 记录CONTROL_FILES参数对应的控制文件参数
比如我们可以在V$CONTROLFILE中查看控制文件的位置:
SQL> select name from v$controlfile;
NAME
-----------------------------------------------
/u01/oracle/oradata/wyzc/control01.ctl
/data1/oracle/oradata/control02.ctl
/data2/oracle/oradata/control03.ctl
如果我们想了解控制文件里都记录了哪些信息,可以通过V$CONTROLFILE_RECORD_SECTIONG
SQL> select type from v$controlfile_record_section;
TYPE
----------------------------
DATABASE
CKPT PROGRESS
REDO THREAD
REDO LOG
DATAFILE
FILENAME
TABLESPACE
TEMPORARY FILENAME
RMAN CONFIGURATION
LOG HISTORY
OFFLINE RANGE
ARCHIVED LOG
BACKUP SET
BACKUP PIECE
BACKUP DATAFILE
BACKUP REDOLOG
DATAFILE COPY
BACKUP CORRUPTION
COPY CORRUPTION
DELETED OBJECT
PROXY COPY
BACKUP SPFILE
DATABASE INCARNATION
FLASHBACK LOG
RECOVERY DESTINATION
INSTANCE SPACE RESERVATION
REMOVABLE RECOVERY FILES
RMAN STATUS
THREAD INSTANCE NAME MAPPING
MTTR
DATAFILE HISTORY
STANDBY DATABASE MATRIX
GUARANTEED RESTORE POINT
RESTORE POINT
DATABASE BLOCK CORRUPTION
ACM OPERATION
FOREIGN ARCHIVED LOG
37 rows selected.
在Oracle 11g R2版本中,控制文件共记录了37种内容,如上。
更多精彩Oracle内容 请关注我:http://dwz.cn/3ng5UY
相关文章推荐
- 基于 Red Hat 的发行版 Oracle Linux 正式发布Oracle Linux 7.1
- Oracle Containers for J2EE远程安全漏洞(CVE-2014-0413)
- Oracle 10g R2不能使用EM的问题
- 表空间操作
- PreparedStatement中in子句的处理
- VMware下RedHat4.8_64位安装Oracle 10g RAC--简略脚本
- oracle sql日期比较
- 基于 Red Hat 的发行版 Oracle Linux 正式发布Oracle Linux 7.1
- OS block size和Oracle block size,查找OS Blocksize的方法
- oracle中创建数据库和表空间的几点总结
- 数据库自动备份脚本
- oracle的nvl函数的使用介绍
- 解决oracle用户连接失败的解决方法
- oracle的一些tips技巧
- Oracle 下的开发日积月累
- Oracle存储过程之数据库中获取数据实例
- Windows下ORACLE 10g完全卸载的方法分析
- Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
- ORACLE LATERAL-SQL-INJECTION 个人见解