systemd
According to the official documentation for systemd on the maria.db site, the configuration files for the maria.db service are stored here:
/usr/lib/systemd/system/mariadb.service
systemd quick info:
systemd is an init replacement that MariaDB uses on releases since 10.1.8. Distribution packages before this version may use a different configuration so consult their documentation if required.
...and for the configuration file we have:
The service definition is installed in /usr/lib/systemd/system/mariadb.service. The service name is mariadb.service; however aliases to mysql.service and mysqld.service are included for convenience.
If your installation is using a customized configuration file to start the maria.db service, then you might find the script in this location:
/etc/systemd/system/mariadb.service.d/XXXX.conf
Where XXXX can be any file name!
This could be because of the recommendation made in the above mentioned link:
If there are some systemd settings to override or to set, create a file /etc/systemd/system/mariadb.service.d/XXXX.conf file where XXXX is something meaningful to you and place the configuration option(s) in an appropriate section, usually [Service]. If a systemd option is a list you may need to set this to empty before you set the replacement values....
In the feedback to the online article there is a short comment that points out that:
MariaDB 10.1.17 and other recent releases still include an init script as well as a systemd unit. The init script ships with chkconfig on and this causes a race condition as to which version of the daemon starts first. This has causes us significant problems with RPM updates and system reboots.
This leads me to the conclusion that you might still have to search for the init.d variants of the configuration files (as pointed out in my initial version of this post) to pinpoint your issues.
init.d
I would check the directory /etc/init.d
for the existence of a mysql or mariadb file.
ls /etc/init.d -lash
If you then open up the corresponding file (e.g. mysql on my Ubuntu Server) you can find the startup part.
cat /etc/init.d/mysql
(note: no mysqld file, just a plain mysql file)
At some point you will find the sanity checks in the service startup script:
## Do some sanity checks before even trying to start mysqld.
sanity_checks() {
# check for config file
if [ ! -r /etc/mysql/my.cnf ]; then
log_warning_msg "$0: WARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz"
echo "WARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz" | $ERR_LOGGER
fi
So the actual file for my setup would be the /etc/mysql/my.cnf file. Then go from there.
Your configuration may differ, but equipped with this knowledge you should be able to find the configuration file for your service.