新装了个测试数据库,启动的时候竟然报错了,

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/oracle/app/oracle/dbs/initTEST.ora'

 

看提示说是初始化参数文件的问题,于是查看初始化参数文件

[oracle@test dbs]$ ls
bakinitTEST.ora  hc_DBUA0.dat  hc_test.dat  init.ora  lkTEST  orapwtest  spfiletest.ora

[oracle@test dbs]$ strings spfiletest.ora
test.__db_cache_size=117440512
test.__java_pool_size=4194304
test.__large_pool_size=4194304
test.__oracle_base='/oracle/app'#ORACLE_BASE set from environment
test.__pga_aggregate_target=146800640
test.__sga_target=272629760
test.__shared_io_pool_size=0
test.__shared_pool_size=134217728
test.__streams_pool_size=4194304
*.audit_file_dest='/oracle/app/admin/test/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/oracle/app/oradata/test/control01.ctl','/oracle/app/orad
ata/test/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='test'
*.diagnostic_dest='/oracle/app'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=testXDB)'
*.memory_target=419430400
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'

 

参数文件没有什么问题,在查看下ORALCE环境变量的设置

[oracle@test app]$ cat .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

ORACLE_BASE=/oracle/app
ORACLE_HOME=$ORACLE_BASE/oracle
ORACLE_SID=TEST
PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

 

发现环境变量中的ORACLE_SID的设置是TEST(大写的),初始化参数文件是spfiletest.ora,初始化参数文件的ORACLE_SID部分是小写的,想起貌似重新建过数据库,建库的时候ORACLE_SID是用的小写,修改环境变量,把环境变量中的ORACLE_SID改成小写,重新登录或用下面命令把ORACLE_SID修改正确

export ORACLE_SID=test

在启动数据库,正常!

SQL> startup
ORACLE instance started.

Total System Global Area  417546240 bytes
Fixed Size                  2213936 bytes
Variable Size             293603280 bytes
Database Buffers          117440512 bytes
Redo Buffers                4288512 bytes
Database mounted.
Database opened.