数据库之文件
大家都知道数据库有实例和文件,而对于实例中的sga和进程已经介绍过了,现在就来回忆一下数据库的文件。
数据库的文件主要有数据文件、参数文件、日志文件和控制文件,而所有的这些文件都是实实在在的东西。一样一样回忆吧。
spfile或者pfile
由于9i之后spfile代替了pfile,所以这里就主要介绍spfile。介绍之前先简单回忆下spfile和pfile的区别吧。spfile是一个二进制文件,不能编辑修改,可以通过pfile来创建。而pfile是文本文件可以直接编辑修改,里面有数据配置信息。这个文件大家都不会陌生,数据库启动nomount、创建数据库需要她,所以非常重要,除了问题连数据库都打不开了,在oracle启动时候优先级是spfile<sid>.ora > spfile.ora > init<sid>.ora,数据库打开时候是nomount、mount和open三个步骤,而关闭时候是database close、database dismounted、oracle instance shut down,其实仔细观察,关闭和打开步骤是相对应的,但是动作都是相反的(打开时候是先启动实例、然后挂载数据库、最后是打开数据库,而关闭时候是先关闭数据库,然后卸载数据库,最后才是关闭实例)。
控制文件
这个文件在数据库mount的时候会检查,可以通过show parameter control查看数据库控制文件信息。
日志和数据文件
这些在数据库open阶段时候会检查,如果出问题数据库就无法切换至open状态。可以分别通过select file_name from dba_data_files;和select group#,member from v$logfile;来查看日志和数据文件位置。
另外还有一些想归档日志文件,告警文件可以通过show parameter recovery和show parameter dump进行查看位置,这里就不一一介绍了。