1. 程式人生 > >ORACLE 12C 開機自動啟動監聽、CDB、PDB

ORACLE 12C 開機自動啟動監聽、CDB、PDB

tor using begin with 觸發器 utility 數據 tab visa

linux下數據庫實例監聽開機自啟動設置
2018年8月1日 zhanky

測試介紹
系統版本:Oracle linux 7.2 x64
數據庫版本:Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
實例名:orcl CDP:orcl PDB:orcl1、orcl2
ORACLE_HOME:/u01/app/oracle/product/12.2.0/db_1

一、設置監聽和CDB開機自啟
通過使用rc.local開機自動運行腳本,調用Oracle自帶的dbstart和lsnrct啟動。但調用dbstart需要在oratab中允許

1、修改oratab

[root@zhanky ~]# vi /etc/oratab 
[root@zhanky ~]# cat /etc/oratab 
#
# This file is used by ORACLE utilities.  It is created by root.sh
# and updated by either Database Configuration Assistant while creating
# a database or ASM Configuration Assistant while creating ASM instance.

# A colon, ‘:‘, is used as the field terminator.  A new line terminates
# the entry.  Lines beginning with a pound sign, ‘#‘, are comments.
#
# Entries are of the form:
#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:
#
# The first and second fields are the system identifier and home
# directory of the database respectively.  The third field indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#

2、編輯rc.local
因為Oracle linux 7.2默認rc.local是沒有執行權限,需執行chmod自己增加
dbstart默認將oratab中參數為Y的所有庫啟動

[root@zhanky ~]# vi /etc/rc.d/rc.local 
[root@zhanky ~]# cat /etc/rc.d/rc.local 
!/bin/bash
THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES

It is highly advisable to create own systemd services or udev rules
to run scripts during boot instead of using this file.

In contrast to previous versions due to parallel execution during boot
this script will NOT be run after all other services.

Please note that you must run ‘chmod +x /etc/rc.d/rc.local‘ to ensure
that this script will be executed during boot.

touch /var/lock/subsys/local
##用oracle用戶登錄,運行lsnrctl start 腳本啟用監聽。
su - oracle -c "/u01/app/oracle/product/12.2.0/db_1/bin/lsnrctl start"
##用oracle用戶登錄,運行dbstart啟動數據庫
su - oracle -c "/u01/app/oracle/product/12.2.0/db_1/bin/dbstart"
[root@zhanky ~]# chmod +x /etc/rc.d/rc.local

二、設置PDB自動啟動
通過觸發器來啟東PDB,下列觸發器中ALTER PLUGGABLE DATABASE ALL OPEN代表將所有PDB啟動,
如果只需

CREATE OR REPLACE TRIGGER open_pdbs
AFTER STARTUP ON DATABASE
BEGIN
EXECUTE IMMEDIATE ‘ALTER PLUGGABLE DATABASE ALL OPEN‘;
END open_pdbs;
/

三、測試驗證,重啟數據庫服務器即可。

ORACLE 12C 開機自動啟動監聽、CDB、PDB