分类: Oracle
2008-11-13 16:32:08
|
查看alert日志也没有发现比较有用的信息。所以还是需要查阅下sql reference。
基本语法是:
|
设计用来在rac环境对数据文件访问进行检测。当磁盘被多个机器共享访问时,有可能个别文件只能被当个机器访问,而其它机器不能访问。一般是由于配置或者操作系统的问题。
假定有个数据文件标示为offline,而且为rac环境。当你想online该数据文件时,你发现其中一个节点不能访问数据文件所在磁盘,这时这个实例不能够验证该数据文件。然后在另外一个实例中,控制文件会将该文件标示为online。但是数据文件仍然不能正常访问,并加载入SGA。此时alter system check datafiles命令可以用来纠正这个问题,使数据文件能够正常访问,将触发实例重新识别并验证这个数据文件。然后使数据库能够正常工作。
另外发现查询v$recover_file这类视图时,容易出现异常错误,原以为是自己输入有问题,核实几遍过后,发现没有问题。example:
SQL> select file#,online,online_error from v$recover_file;
select file#,online,online_error from v$recover_file
*
ERROR at line 1:
ORA-00936: missing expression
上面视图中online字段在10.2.0.1中被obosolete了,所以不能直接指定该字段,只能通过
select * from v$recover_file;
或者
select FILE# , "ONLINE" , ONLINE_STATUS, ERROR , CHANGE# , TIME from v$recover_File;
来避免不必要的报错信息。
总之:本文达到两个目的:
1、了解alter system check datafiles的基本作用。
2、如何避免某些视图在高版本中字段obosolete,如何查看视图信息的问题即可。
随手记录!