Oracle在Linux上不如同SQL在Windows上, 以Service的方式在每次開機時可以自動啟動(當然也是設定的)
因此,要讓Oracle能自動啟動, 多少要動一點Linux上的設定.
比較麻煩的是, Oracle服務起來了還有監聽器, 都起來了還有DB....
設定重開機自動啟動Oracle 12c R2 on Linux 7
1. 修改 /etc/oratab 的檔案內容, 將下列設定改為Y
orcl:/u01/app/oracle/product/12.2.0/db_1:Y
2. 新增一個檔案到 /etc/init.d/ 目錄下, 命名為 dbora, 此部分可以參考官方文件上的設定.
#!/bin/bash
# oracle: Start/Stop Oracle Database 11g R2/12c
#
# chkconfig: 345 90 10
# description: The Oracle Database Server is an RDBMS created by Oracle Corporation
#
# processname: oracle
. /etc/rc.d/init.d/functions
LOCKFILE=/var/lock/subsys/oracle
ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1/
ORACLE_USER=oracle
case "$1" in
'start')
if [ -f $LOCKFILE ]; then
echo $0 already running.
exit 1
fi
echo -n $"Starting Oracle Database:"
su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
touch $LOCKFILE
;;
'stop')
if [ ! -f $LOCKFILE ]; then
echo $0 already stopping.
exit 1
fi
echo -n $"Stopping Oracle Database:"
su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
rm -f $LOCKFILE
;;
'restart')
$0 stop
$0 start
;;
'status')
if [ -f $LOCKFILE ]; then
echo $0 started.
else
echo $0 stopped.
fi
;;
*)
echo "Usage: $0 [start|stop|status]"
exit 1
esac
exit 0
3. 指定上述檔案的權限配置
cd /etc/init.d
chgrp dba dbora
chmod 750 dbora
chkconfig --add dbora
之後就重開機看看有沒有自動帶起來囉~~