Oracle 仅自动启动,手动尝试时不启动

Oracle 仅自动启动,手动尝试时不启动

几个月前,我在 ubuntu 系统上安装了 oracle,它运行得很好。我将其设置为在系统启动时启动,并运行以下命令来停止/启动服务

sudo service oracledb start
sudo service oracledb stop

这也行得通。但是,由于系统启动速度非常慢,我决定从启动中删除 oracle,而且我不再像以前那样频繁地使用它。我希望在需要时启动和停止 oracle。因此,为了从启动中删除它,我编辑了我的/etc/oratab文件

orcl:/u01/app/oracle/product/11.2.0/dbhome_3:Y

我将最后一个改为YN在网上读了一些资料后)。现在 oracle 不会在启动时启动,但启动命令也不起作用。如果我将上面的改为Y,上面的启动/停止命令会立即起作用,但 oracle 也会在启动时启动,这就是我试图更改的。

我无法用我的 google-fu 解决这个问题。我是否应该采取其他措施来关闭 oracle 在启动时启动的功能?

答案1

/etc/oratabOracle 每次运行时、启动时以及您要求其运行时都会使用该文件。因此,如果您禁用 Oracle,则无论您使用何种方法运行它,它都会被禁用。因此请保留Y此文件。

要防止服务在启动后自动启动,只需将其从 X 中删除,/etc/rcX.d/其中 X 是 0 到 7 之间的数字(运行级别)。
您可以手动删除启动链接(以 S 开头的链接表示 strat,以 K 开头的链接表示停止),或使用update-rc.d -f oracledb remove; update-rc.d oracledb stop 20 016 .(带最后一个点)删除 Oracle 启动/停止,然后只需添加停止链接(否则关闭计算机时 Oracle 不会停止)。

答案2

您可以在需要时手动启动数据库:

$ su - <your oracle user>
ora$ lsnrctl start 
ora$ dbstart

如果你没有dbstart,请使用sqlplus

ora$ sqlplus / as sysdba
...
SQL> startup

关机,dbstop或根据需要发出sqlplus问题。(要停止监听器, 。)shutdown [normal|immediate]lsnrctl stop

另一个选项很可能是让oracledb服务不自动启动,并将行重置oratabY。如何将服务设置为手动模式取决于服务的类型(传统或新贵)。AskUbuntu 上的这个答案有大量关于如何更改服务启动模式的详细信息。

相关内容