linux 上的 oracle问题
1、 当输入startup命令后,Oracle启动数据库的参数选择顺序
1) 在$ORACLE_HOME/dbs/目录下查找初始化参数文件spfileSID.ora,启动instance
2) 查找缺省spfile文件,就是spfile.ora, 启动instance
3) 查找initSID.ora这个文件并启动instance
4) 使用缺省pfile,也就是在敲命令时STARTUP PFILE = $ORACLE_HOME/dbs/initDBA1.ora,直接用指定的pfile启动instance
2、 oracle数据库的启动
Oracle数据库的启动可以分为四个阶段
1) shutdown:没有启动,oracle的表现就是一堆存在磁盘的文件,软件是软件,数据是数据。
2) nomount:这时工厂流水线都准备好了
a.读取初始化参数文件;
b.为SGA分配内存;
c.启动后台进程;
d.打开alertSID.log文件和跟踪文件
3) mount:数据库已跟instance建立连接,这时只有管理可以访问数据库做维护如备份,恢复,普通用户还不可以连接
关联一个数据库与在nomount启动的instance;定位并打开按参数文件指定的control files;读取数据文件和重做日志文件的名字和状态。但在这个阶段不会确认数据文件和重做日志文件的存在。
4) open
打开数据库文件和重做日志文件。这时数据库就可以被正常访问。
3、 oracle数据库的关闭
shutdown normal:不建立新连接,还有连接在的话不能关闭。
shutdown immediate:不建立新连接;中断正在执行的sql语句;回滚未提交的事务;断开在线用户;将redo buffers里的内容写入磁盘;关闭instance。
shutdown transactional:不建立新连接;客户端无法发起新的事务;客户端事务处理完成后断开客户端连接;将redo buffers里的内容写入磁盘;关闭instance。
shutdown abort:立即关闭instance;redo buffers里的内容不会写入磁盘;下次启动会自动执行数据库恢复程序。
4、 排除故障
找日志文件类型:
1)alertSID.log
有以下这些被记录
数据库启动或关闭;
非默认值的参数列表(包括参数名称和参数值,在spfile或pfile损坏时可以借助这些信息从新构造spfile或pfile);
启动后台进程;
被instance所用的线程;
2)后台跟踪文件(Background trace files)
记录当后台程序出现重大错误时的信息。一般命名为sid_processname_PID.trc。所在位置由参数BACKGROUND_DUMP_DEST值定义。
3)用户跟踪文件(User trace files)。
由用户进程产生,也可以被server进程生成,包含跟踪SQL语句的统计信息和记录用户会话错误信息。可以用来对SQL的调优和排错。
重启后,oracle listener start 后没有服务,数据库没有启动,sqlplus / nolog 或者sqlplus / as sysdba ,startup,报下面的错
find . - name 'init*'
LRM-00109: could not open parameter file '/u01/app/oracle/product/12.1.0/db_1/dbs/initepps.ora'
安装好oracle后,起动时报如下错误:
[oracle@Oracle-A ~]$ export ORACLE_SID=ORCL [oracle@Oracle-A ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 12 21:39:26 2018 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initORCL.ora'
复制如下位置的文件,如:
[oracle@Oracle-A dbhome_1]$ cp /u01/app/base/admin/orcl/pfile/init.ora.582018154558 /u01/app/oracle/product/11.2.0/dbhome_1/dbs/initORCL.ora
故障排除:
SQL> startup ORACLE instance started. Total System Global Area 835104768 bytes Fixed Size 2257840 bytes Variable Size 536874064 bytes Database Buffers 289406976 bytes Redo Buffers 6565888 bytes Database mounted. Database opened.