首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 教學

Linux 下 Oracle 服務啟動/關閉指令與開機自啟動設定

     編輯:Oracle 教學

手動啟動/關閉流程

  1. 切換到 oracle 使用者:
    SU - ORACLE
  2. 進入 SQL*Plus:
    SQLPLUS / AS SYSDBA
  3. 啟動資料庫:
    STARTUP
  4. 關閉資料庫:
    SHUTDOWN IMMEDIATE

開機自啟動設定 (Oracle 10g/11g on RHEL/CentOS 6)

Oracle 安裝不會自動建立 systemd/init.d 服務,需手動配置。

方法一:使用 Oracle 提供的 dbstart/dbshut (需修正)

  1. 編輯 $ORACLE_HOME/bin/dbstart 與 dbshut,將 ORACLE_HOME_LISTNER=$1 改為 ORACLE_HOME_LISTNER=$ORACLE_HOME。
  2. 編輯 /etc/oratab,將實例啟動標誌從 N 改為 Y:
    ORCL:/u01/app/oracle/product/11.2.0/dbhome_1:Y
  3. 建立 /etc/init.d/oracle 服務腳本:
#!/bin/bash
# chkconfig: 345 99 10
# description: Oracle Database startup/shutdown
ORA_OWNER=oracle
ORA_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
case "$1" in
  start)
    su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME" &
    ;;
  stop)
    su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME" &
    ;;
  *)
    echo "Usage: $0 {start|stop}"
    exit 1
esac
  1. 註冊服務:
    CHKCONFIG --ADD ORACLE
    CHKCONFIG ORACLE ON

方法二:systemd 服務單元 (RHEL/CentOS 7+)

# /etc/systemd/system/oracle-db.service
[Unit]
Description=Oracle Database
After=network.target

[Service]
Type=forking
User=oracle
Group=oinstall
Environment=ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
Environment=ORACLE_SID=ORCL
ExecStart=$ORACLE_HOME/bin/dbstart $ORACLE_HOME
ExecStop=$ORACLE_HOME/bin/dbshut $ORACLE_HOME
TimeoutSec=300

[Install]
WantedBy=multi-user.target

啟用:SYSTEMCTL DAEMON-RELOAD && SYSTEMCTL ENABLE ORACLE-DB && SYSTEMCTL START ORACLE-DB

驗證

重啟伺服器後,以 oracle 使用者執行 PS -EF | GREET PMON 確認背景程序已啟動。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved