我们知道,Oracle在启动过程中,需要读取参数文件(pfile/spfile)来创建实例.Oracle在启动过程中,寻找参数文件的顺序为:spfile<sid>.ora,spfile.ora,init<sid>.ora.
而创建实例的过程中,Oracle需要的最少参数为一个,即db_name参数.
我们来看一个测试,启动一个任意设置的实例,本例ORACLE_SID=julia:
[oracle@jumperdbs]$exportORACLE_SID=julia
[oracle@jumperdbs]$sqlplus"/assysdba"
SQL*Plus:Release9.2.0.4.0-ProductiononMonMay811:08:362006
Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.
Connectedtoanidleinstance.
SQL>startupnomount;
ORA-01078:failureinprocessingsystemparameters
LRM-00109:couldnotopenparameterfile'/opt/oracle/product/9.2.0/dbs/initjulia.ora'
Oracle最后检查的文件为initjulia.ora,让我们创建这个文件,然后数据库实例即可创建:
SQL>!echo"db_name=julia">/opt/oracle/product/9.2.0/dbs/initjulia.ora
SQL>startupnomount;
ORACLEinstancestarted.
TotalSystemGlobalArea97588504bytes
FixedSize451864bytes
VariableSize46137344bytes
DatabaseBuffers50331648bytes
RedoBuffers667648bytes
我们可以看一下缺省的各类文件的存储地点:
SQL>showparameterdump_dest
NAMETYPEVALUE
----------------------------------------------------------------------------------------
background_dump_deststring?/rdbms/log
core_dump_deststring?/dbs
user_dump_deststring?/rdbms/log
SQL>showparametercontrol_files
NAMETYPEVALUE
----------------------------------------------------------------------------------------
control_filesstring?/dbs/cntrl@.dbf
我们顺便看一下缺省的,警报日志中记录的信息:
[oracle@jumperdbs]$cat$ORACLE_HOME/rdbms/log/alert_julia.log
MonMay811:09:042006
StartingORACLEinstance(normal)
MonMay811:09:042006
WARNING:EINVALcreatingsegmentofsize0x0000000006400000
fixshmparametersin/etc/systemorequivalent
LICENSE_MAX_SESSION=0
LICENSE_SESSIONS_WARNING=0
SCNscheme2
Usinglog_archive_destparameterdefaultvalue
LICENSE_MAX_USERS=0
SYSauditingisdisabled
StartingupORACLERDBMSVersion:9.2.0.4.0.
Systemparameterswithnon-defaultvalues:
db_name=julia
PMONstartedwithpid=2
DBW0startedwithpid=3
LGWRstartedwithpid=4
CKPTstartedwithpid=5
SMONstartedwithpid=6
RECOstartedwithpid=7
而创建实例的过程中,Oracle需要的最少参数为一个,即db_name参数.
我们来看一个测试,启动一个任意设置的实例,本例ORACLE_SID=julia:
[oracle@jumperdbs]$exportORACLE_SID=julia
[oracle@jumperdbs]$sqlplus"/assysdba"
SQL*Plus:Release9.2.0.4.0-ProductiononMonMay811:08:362006
Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.
Connectedtoanidleinstance.
SQL>startupnomount;
ORA-01078:failureinprocessingsystemparameters
LRM-00109:couldnotopenparameterfile'/opt/oracle/product/9.2.0/dbs/initjulia.ora'
Oracle最后检查的文件为initjulia.ora,让我们创建这个文件,然后数据库实例即可创建:
SQL>!echo"db_name=julia">/opt/oracle/product/9.2.0/dbs/initjulia.ora
SQL>startupnomount;
ORACLEinstancestarted.
TotalSystemGlobalArea97588504bytes
FixedSize451864bytes
VariableSize46137344bytes
DatabaseBuffers50331648bytes
RedoBuffers667648bytes
我们可以看一下缺省的各类文件的存储地点:
SQL>showparameterdump_dest
NAMETYPEVALUE
----------------------------------------------------------------------------------------
background_dump_deststring?/rdbms/log
core_dump_deststring?/dbs
user_dump_deststring?/rdbms/log
SQL>showparametercontrol_files
NAMETYPEVALUE
----------------------------------------------------------------------------------------
control_filesstring?/dbs/cntrl@.dbf
我们顺便看一下缺省的,警报日志中记录的信息:
[oracle@jumperdbs]$cat$ORACLE_HOME/rdbms/log/alert_julia.log
MonMay811:09:042006
StartingORACLEinstance(normal)
MonMay811:09:042006
WARNING:EINVALcreatingsegmentofsize0x0000000006400000
fixshmparametersin/etc/systemorequivalent
LICENSE_MAX_SESSION=0
LICENSE_SESSIONS_WARNING=0
SCNscheme2
Usinglog_archive_destparameterdefaultvalue
LICENSE_MAX_USERS=0
SYSauditingisdisabled
StartingupORACLERDBMSVersion:9.2.0.4.0.
Systemparameterswithnon-defaultvalues:
db_name=julia
PMONstartedwithpid=2
DBW0startedwithpid=3
LGWRstartedwithpid=4
CKPTstartedwithpid=5
SMONstartedwithpid=6
RECOstartedwithpid=7