一、控制文件
1、控制文件记录的信息
select * from v$controlfile; --查询控制文件路径
select * from V$parameter where name like '%control_files%';--查询控制文件路径
show parameter control_file; --查看控制文件参数
1-1、数据库信息:数据库名称、数据库创建时间等
1-2、所有数据文件、重做日志文件 名称及位置
1-3、表空间信息
1-4、offline 数据文件信息
1-5、重做日志及归档日志信息
1-6、备份集及备份文件信息
1-7、检查点 及 SCN信息
2、查看控制文件信息
因控制文件是二进制文件,无法直接打开,可将内容转储出来或是以备份形式来看:
2-1、将内容转储出来查看,按以下命令进行转储
alter session set events 'immediate trace name controlf level 8'; --立即进行控制文件转储
select name ,value from v$diag_info where name like '%Default Trace File%'; --查询转储文件的位置
2-2 、以备份形式查看控制文件
alter database backup controlfile to trace as '指定的路径'; --只能备份到指定的路径下
以上两种方法看到的内容不太一样,第二种方法的文件内容更像是数据库启动时加载的跟踪信息--不太明白第二种方法
二、SCN (System Change Number)
SCN就是通常所说的系统改变号,是数据库中非常重要的一个数据结构,用以标识数据库在某个确切时刻提交的版本;在事务提交时,被赋予一个唯一的标识事务的SCN。同时SCN是oracle内部的时钟机制,oracle 通过SCN来维护数据库的一致型,及通过SCN来实施oracle至关重要的恢复机制。
1、如何查询SCN
select dbms_flashback.get_system_change_number from dual;--感觉不太准确
select CURRENT_SCN from V$database;
或者是从内存中获取SCN信息--没有使用过
2、查看数据数据头信息及检查点信息
alter session set events 'immediate trace name file_hdrs level 10'; ---对数据文件头信息转储
select name ,value from v$diag_info where name like '%Default Trace File%'; --查询转储后的文件路径
--查看重做日志文件的SCN信息
select * from V$logfile; --查询重做日志文件路径
alter system dump logfile ‘E:\APP\ADMINISTRATOR\ORADATA\GOGSS\REDO01.LOG ’; --对重做日志文件进行转储
select name ,value from v$diag_info where name like '%Default Trace File%'; --查看转储后的文件路径