使用 systemd 管理 MySQL 服务
个人博客地址:使用 systemd 管理 MySQL 服务 | 一张假钞的真实世界
创建 systemd 服务文件
sudo vi /etc/systemd/system/mysql.service
在文件中添加以下内容(根据个人的实际安装路径调整):
[Unit]
Description=MySQL Server
After=network.target[Install]
WantedBy=multi-user.target[Service]
User=mysql
Group=mysql
Type=notify
TimeoutSec=0
PermissionsStartOnly=true
ExecStartPre=/usr/bin/mkdir -p /var/run/mysqld
ExecStartPre=/usr/bin/chown mysql:mysql /var/run/mysqld
ExecStart=/opt/mysql/bin/mysqld
ExecStop=/opt/mysql/bin/mysqladmin -u root shutdown
LimitNOFILE=5000
Restart=on-failure
RestartSec=10
创建必要的目录和权限
在 MySQL 配置文件中做如下配置:
[mysqld]
socket = /var/run/mysqld/mysqld.sock
pid-file = /var/run/mysqld/mysqld.pid
basedir = /opt/mysql
datadir = /opt/mysql/data
log-error = /var/log/mysql/error.log
plugin-dir = /opt/mysql/lib/plugin
# 创建运行目录
sudo mkdir -p /var/run/mysqld
sudo chown mysql:mysql /var/run/mysqld# 创建日志目录(如果不存在)
sudo mkdir -p /var/log/mysql
sudo chown mysql:mysql /var/log/mysql
重新加载 systemd 配置
sudo systemctl daemon-reload
启用 MySQL 开机启动
$ sudo systemctl enable mysql
Created symlink /etc/systemd/system/multi-user.target.wants/mysql.service → /etc/systemd/system/mysql.service.
启动 MySQL 服务
sudo systemctl start mysql
查看 MySQL 服务状态
sudo systemctl status mysql
停止 MySQL 服务
sudo systemctl stop mysql