1- # Handle shutdowns
2- # docker stop --time=30 {container}
1+ echo " ******************************************************************************"
2+ echo " Handle shutdowns." ` date`
3+ echo " docker stop --time=30 {container}" ` date`
4+ echo " ******************************************************************************"
35function gracefulshutdown {
46 dbshut $ORACLE_HOME
57}
@@ -8,32 +10,77 @@ trap gracefulshutdown SIGINT
810trap gracefulshutdown SIGTERM
911trap gracefulshutdown SIGKILL
1012
11- # Fixes the config using the contents of the volume.
12- # Necessary when using persistent volume as "rm" and "run" will reset the config
13- # under the ORACLE_HOME.
13+ echo " ******************************************************************************"
14+ echo " Define fixConfig function." ` date`
15+ echo " Fixes the config using the contents of the volume." ` date`
16+ echo " Necessary when using persistent volume as " rm" and " run" will reset the config" ` date`
17+ echo " under the ORACLE_HOME." ` date`
18+ echo " ******************************************************************************"
1419function fixConfig {
15- cp -f /u02/config/oratab /etc/oratab
16- ln -s /u02/config/${ORACLE_SID} /orapw${ORACLE_SID} ${ORACLE_HOME} /dbs/orapw${ORACLE_SID}
17- ln -s /u02/config/${ORACLE_SID} /spfile${ORACLE_SID} .ora ${ORACLE_HOME} /dbs/spfile${ORACLE_SID} .ora
18- ln -s /u02/config/${ORACLE_SID} /admin ${ORACLE_BASE} /admin
19- ln -s /u02/config/${ORACLE_SID} /fast_recovery_area ${ORACLE_BASE} /fast_recovery_area
20- rm -Rf ${ORACLE_BASE} /diag
21- ln -s /u02/config/${ORACLE_SID} /diag ${ORACLE_BASE} /diag
20+ cp -f /u02/config/oratab /etc/oratab
21+ if [ ! -L ${ORACLE_HOME} /dbs/orapw${ORACLE_SID} ]; then
22+ ln -s /u02/config/${ORACLE_SID} /orapw${ORACLE_SID} ${ORACLE_HOME} /dbs/orapw${ORACLE_SID}
23+ fi
24+ if [ ! -L ${ORACLE_HOME} /dbs/spfile${ORACLE_SID} .ora ]; then
25+ ln -s /u02/config/${ORACLE_SID} /spfile${ORACLE_SID} .ora ${ORACLE_HOME} /dbs/spfile${ORACLE_SID} .ora
26+ fi
27+ if [ ! -L ${ORACLE_BASE} /admin ]; then
28+ ln -s /u02/config/${ORACLE_SID} /admin ${ORACLE_BASE} /admin
29+ fi
30+ if [ ! -L ${ORACLE_BASE} /fast_recovery_area ]; then
31+ ln -s /u02/config/${ORACLE_SID} /fast_recovery_area ${ORACLE_BASE} /fast_recovery_area
32+ fi
33+ if [ ! -L ${ORACLE_BASE} /diag ]; then
34+ rm -Rf ${ORACLE_BASE} /diag
35+ ln -s /u02/config/${ORACLE_SID} /diag ${ORACLE_BASE} /diag
36+ fi
2237}
2338
24- echo " **************************************************************************"
25- echo " Create a listener.ora file if it doesn 't already exist."
26- echo " **************************************************************************"
39+ echo " ****************************************************************************** "
40+ echo " Create networking files if they don 't already exist." ` date `
41+ echo " ****************************************************************************** "
2742if [ ! -f ${ORACLE_HOME} /network/admin/listener.ora ]; then
28- echo " LISTENER =
43+ echo " ******************************************************************************"
44+ echo " First start, so create networking files." ` date`
45+ echo " ******************************************************************************"
46+
47+ cat > ${ORACLE_HOME} /network/admin/listener.ora << EOF
48+ LISTENER =
2949(DESCRIPTION_LIST =
3050 (DESCRIPTION =
3151 (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
3252 (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
3353 )
3454)
3555USE_SID_AS_SERVICE_listener=on
36- " > ${ORACLE_HOME} /network/admin/listener.ora
56+ INBOUND_CONNECT_TIMEOUT_LISTENER=400
57+ EOF
58+
59+ cat > ${ORACLE_HOME} /network/admin/tnsnames.ora << EOF
60+ LISTENER = (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
61+
62+ ${ORACLE_SID} =
63+ (DESCRIPTION =
64+ (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
65+ (CONNECT_DATA =
66+ (SERVER = DEDICATED)
67+ (SERVICE_NAME = ${ORACLE_SID} )
68+ )
69+ )
70+
71+ ${PDB_NAME} =
72+ (DESCRIPTION =
73+ (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
74+ (CONNECT_DATA =
75+ (SERVER = DEDICATED)
76+ (SERVICE_NAME = ${PDB_NAME} )
77+ )
78+ )
79+ EOF
80+
81+ cat > ${ORACLE_HOME} /network/admin/sqlnet.ora << EOF
82+ SQLNET.INBOUND_CONNECT_TIMEOUT=400
83+ EOF
3784fi
3885
3986echo " **************************************************************************"
0 commit comments