Skip to Main Content

Infrastructure Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Oracle Database 19.7 Automatic Startup on OLS 8.3

Radu N.Mar 16 2021 — edited Mar 16 2021

Good morning all.
I'm stuck with an issue on Oracle Database startup. The DB version and OS version are in the Question title.
The issue I'm facing is that sometimes, but not always, on server reboot, the Oracle Service doesn't start.
The server's disks are mounted like this:
/dev/mapper/ARCLOG-ARCLOG_VOL 350G 3.0G 347G 1% /oraarchive
/dev/mapper/BACKUP-BACKUP_VOL 1.4T 9.8G 1.4T 1% /orabackup
/dev/mapper/ORADATA-ORADATA_VOL 1.5T 852G 684G 56% /u01

The error I got in /var/log/messages is the following one:
Mar 16 10:42:18 trn-oracle systemd[1241]: ora_db.service: Failed to execute command: No such file or directory
Mar 16 10:42:18 trn-oracle systemd[1241]: ora_db.service: Failed at step EXEC spawning /u01/app/oracle/product/19.0.0/dbhome_1/bin/dbstart: No such file or directory
Mar 16 10:42:18 trn-oracle systemd[1]: Started Hardware RNG Entropy Gatherer Daemon.
Mar 16 10:42:18 trn-oracle systemd[1]: ora_db.service: Control process exited, code=exited status=203
Mar 16 10:42:18 trn-oracle systemd[1]: ora_db.service: Failed with result 'exit-code'.

That happens because the mount of /u01 partition chronologically finishes AFTER the start or Oracle Service.

My service file is:
------------------------------------------------------------------------------------------------------------------------
Description=The Oracle 19.7 Database Service
After=rsyslog.target network.target local-fs.target
#Requires=network.target u01.mount orabackup.mount
#RequiresMountsFor=/u01
#RequiresMountsFor=/orabackup
#ConditionPathIsReadWrite=/u01
#ConditionPathIsReadWrite=/orabackup

[Service]
Type=forking
# Systemd ignores PAM limits, so set any necessary limits in the service.
# Not really a bug, but a feature. https://bugzilla.redhat.com/show_bug.cgi?id=754285

LimitMEMLOCK=infinity
LimitNOFILE=65535

EnvironmentFile=/etc/sysconfig/env.ora-trn
# Type=simple
# idle: similar to simple, the actual execution of the service binary is delayed
# until all jobs are finished, which avoids mixing the status output with shell output of services.
# RemainAfterExit=yes
User=oracle
Group=oinstall
#Restart=no
ExecStart=/u01/app/oracle/product/19.0.0/dbhome_1/bin/dbstart /u01/app/oracle/product/19.0.0/dbhome_1
ExecStop=/u01/app/oracle/product/19.0.0/dbhome_1/bin/dbshut /u01/app/oracle/product/19.0.0/dbhome_1

[Install]
WantedBy=multi-user.target
------------------------------------------------------------------------------------------------------------------------

I tried some options in the "After=" condition (the ones commented below) without success.
Any ideas are welcome because I'm stuck here for about two days.
Thank you very much for your time.
Regards.

Radu N.

Comments
Post Details
Added on Mar 16 2021
3 comments
2,258 views