淘先锋技术网

首页 1 2 3 4 5 6 7

【STARTUP】Oracle数据库启动过程中参数文件的使用的顺序及注意事项

<wbr></wbr>

1.Oracle在启动数据库过程中参数文件的使用顺序描述
这方面的信息在Oracle的官方文档中有比较详细的介绍,文档链接如下,请自行参考。
http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/start.htm#sthref512

UNIX或Linux平台数据库启动过程中检索的目录如下:
$ORACLE_HOME/dbs
Windows平台的目录有些许的区别,注意一下。
%ORACLE_HOME%\database

在提交startup命令之后,在上述目录下Oracle会自动按照如下的顺序查找参数文件完成数据库的启动。
<wbr><wbr> 1)spfile$ORACLE_SID.ora</wbr></wbr>
<wbr><wbr> 2)spfile.ora</wbr></wbr>
<wbr><wbr> 3)init$ORACLE_SID.ora</wbr></wbr>

2.注意事项
这里强调指出的一个问题是:不可像显式使用特定pfile的方法去使用spfile!

虽然可以显式指定具体pfile作为启动数据库的参数文件,但这里需要注意的是,不可以显式指定某个spfile作为启动的参数文件。
下面的用法是不正确的。
sys@ora10g> startup spfile='?/dbs/spfileora10g.ora';
SP2-0714: invalid combination of STARTUP options

错误提示:startup命令后面跟随的选项不正确。原因很简单,spfile作为系统参数文件是在启动过程中自动识别到的,其命名规则也是固定的。因此请不要尝试显式的去使用spfile启动数据库。

此时,如果我们显式的使用pfile是可以完成数据库的启动。
sys@ora10g> startup pfile='?/dbs/initora10g.ora';
ORACLE instance started.
Total System Global Area<wbr> 209715200 bytes</wbr>
Fixed Size<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> 2071640 bytes</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
Variable Size<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> 125830056 bytes</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
Database Buffers<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> 75497472 bytes</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
Redo Buffers<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> 6316032 bytes</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
Database mounted.
Database opened.

3.小结
掌握了数据库在启动过程中具体使用那个参数文件的规则后,一旦出现参数方面的问题便可以很容易定位并处理。
本文提到的注意事项也许您曾遇到过,或认为这不是问题(因为自己的操作习惯中没有这一项)。在这里强调一下的目的是,我们在遭遇各种各样的报错信息的时候最好能够深入的思考一下,这些错误信息背后的真实原因是什么。