Oracle——检查数据库是否正常运行,如果没有,并重启数据库

1、su oracle  切换到linux的oracle账号

需要使用 su -oracle,而不是su oracle;原因是:

先执行exit退出,再重新切换

2、打开数据库监听

lsnrctl listener 启动监听  #这种格式是错误的(具体参考:https://www.cnblogs.com/Formulate0303/p/15493173.html

 lsnrctl status  查看监听listener的状态,提供listener(监听)的状态信息,包括启动时间、运行时间和trace级别;

 

说明:没有打开监听(listener),当listener被停止后,连接数据库实例将导致ORA-12541异常。

 执行lsnrctl start    打开数据库监听器(listener)

 3、再执行ps -ef|grep smon  查看数据库有没有打开

 

说明:数据库都没有启动

4、需要先看一下存储空间,再启动

df  -h

说明:有空间

5、启动数据库(实例)

执行sqlplus / as sysdba    登录数据库

执行startup    启动数据库

6、检查是否启动成功

 说明:haimatajtk3这个实例启动成功。

说明:看数据库是不对的,不是自己想要的数据库实例,147.62上是有两个数据库实例。

7、切换数据库实例、并启动

执行export  ORACLE_SID=haimapps1   切换数据库实例

执行echo $ORACLE_SID,检查是否切换成功实例

启动该实例

执行sqlplus / as sysdba    登录数据库系统

执行startup   启动

这次就会启动另一个实例

参考:https://blog.csdn.net/tomato__/article/details/39638383      Oracle listener lsnrctl

https://blog.csdn.net/qq_35868412/article/details/102810462      oracle 有多个实例怎么切换

生活其实也很简单,喜欢的就去争取、得到的就珍惜、失去的就忘记。
原文地址:https://www.cnblogs.com/Formulate0303/p/15492403.html