oracle dbstart 和 dbshut 启动、关闭数据库报错 ORACLE_HOME_LISTNER is not SET 解决办法
安装好Oracle数据库后,dbstart启动数据库报错,如下:
1 2 3 |
[oracle@oracle11g ~]$ dbstart ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener Usage: /u01/app/oracle/product/10.2.0/db_1/bin/dbstart ORACLE_HOME |
这个错误的意思是没有设置 ORACLE_HOME_LISTNER 路径,自动启动监听失败。很多人说的解决办法是直接修改dbstart脚本:
1 |
[oracle@oracle11g ~]$ vi $ORACLE_HOME/bin/dbstart |
修改其中:ORACLE_HOME_LISTNER=$1为ORACLE_HOME_LISTNER=$ORACLE_HOME
重试 dbstart 启动数据库不报错,如果还是无反应。
修改/etc/oratab
1 |
[oracle@oracle11g ~]$ vi /etc/oratab |
其中修改 orcl:/u01/app/oracle/product/11.2.0/db_1:N 为 orcl:/u01/app/oracle/product/11.2.0/db_1:Y,也就是把 N 修改为 Y 再重试成功。
这种方法是能够解决问题,可是本来 dbstart 脚本是通过第一个参数为 ORACLE_HOME_LISTNER 设置路径的。
所以建议还是通过明确指定路径更好,例如
1 |
dbstart /u01/app/oracle/product/10.2.0/db_1/ |
或者可以再启动数据库 dbstart 前,先手工启动监听,忽律这个错误提示。
1 |
lsnrctl start |
dbshut 关闭数据库报错,解决方法同上。
分类: oracle