Managing the MySQL Server with systemd
If you install MySQL using an RPM or Debian package server, startup and shutdown is managed by systemd. On platforms for which the systemd support for MySQL is installed, mysqld_safe, mysqld_multi, and mysqld_multi.server are not installed. MySQL server startup and shutdown is managed by systemd using the systemctl command. You need to configure systemd as follows.
Note
RPM-based systems use the mysqld.service files, and APT-based systems use the mysql.server files.
How to do it...
- Create a localized
systemdconfiguration file:
shell> sudo mkdir -pv /etc/systemd/system/mysqld.service.d
- Create/open the
conffile:
shell> sudo vi /etc/systemd/system/mysqld.service.d/override.conf
- Enter the following:
[Service] LimitNOFILE=max_open_files (ex: 102400) PIDFile=/path/to/pid/file (ex: /var/lib/mysql/mysql.pid) Nice=nice_level (ex: -10) Environment="LD_PRELOAD=/path/to/malloc/library" Environment="TZ=time_zone_setting"
- Reload
systemd:
shell> sudo systemctl daemon-reload
- For temporary changes, you can reload without editing the
conffile:
shell> sudo systemctl set-environment MYSQLD_OPTS="--general_log=1" or unset using shell> sudo systemctl unset-environment MYSQLD_OPTS
- After modifying the
systemdenvironment, restart the server to make the changes effective. Enablemysql.serviceshell> sudo systemctl, and enablemysql.service:
shell> sudo systemctl unmask mysql.service
- Restart
mysql: On RPM platforms:
shell> sudo systemctl restart mysqld
On Debian platforms:
shell> sudo systemctl restart mysql