解决linux中oracle的/etc/oratab文件的缺失导致数据库启动失败

oratab文件说明
这个文件是在创建数据库实例时建立的,需要用root用户运行root.sh,如果忘记运行在自启动和关闭时会失败,错误信息:"/etc/oratab" is not accessible。

它记录主机中有多少个数据库。

在$ ORACLE_HOME/bin目录下的$ ORACLE_HOME/bin/dbstart和$ ORACLE_HOME/bin/dbshut需要调用/etc/oratab文件,如果不存在,dbstart和dbshut将失败。

etc/oratab 格式为: SID:ORACLE_HOME:AUTO

如果需要自动启动数据库,则将AUTO设为Y,在调用dbstart命令才生效。dbstart根据/etc/oratab中的配置来启动相应的数据库,选项只是能不能用$ ORACLE_HOME/bin/dbstart和 $ ORACLE_HOME/bin/dbshut来启动和关闭数据库的开关。

$ ORACLE_SID:$ORACLE_HOME:<N|Y>

说明:第一个区域的值是sid,第二个区域的值是数据库主目录,第三个区域的值Y或N指定你是否想要dbstart和dbshut脚本启动并关闭数据库。

oratab文件 如果在安装过程中环境参数设置正确会导致安装之后,找不到此文件。
解决方法是使用root用户在oracle的安装目录 $ORALCE_HOME 下执行 root.sh

解决linux中oracle的/etc/oratab文件的缺失导致数据库启动失败
oratab文件会被重新建立 之后可以将数据库启动设置为自动启动

说明:
orainstRoot.sh
设置产品目录位置与拥有该目录的操作系统组,并产生/etc/oraInst.loc。
root.sh
用来设置必要的操作系统权限,并将orahome,oraenv,coraenv复制到/usr/local/bin目录下。生成/etc/oratab,其中存放一些数据库相关信息。