CentOS7中将MySQL注册为系统服务&开机启动

实际生产环境中为了避免重启服务器后所有的服务都手动启动带来的麻烦,建议所有基础服务都设置为开机自动启动。本章节我们主要演示在Centos7中如何将MySQL注册为系统服务,并实现开机自动启动。

① 手动启动mysql,查看进程信息,复制pid-file后的路径。

bash 复制代码
/usr/local/mysql/support-files/mysql.server start

② 在 /usr/lib/systemd/system 目录下创建一个文件 mysql.service

③ 编辑 mysql.service,输入以下内容

bash 复制代码
[Unit]
Description=Mysql
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/mysql/data/centos-linux.shared.pid
ExecStart=/usr/local/mysql/support-files/mysql.server start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mysql/support-files/mysql.server stop
PrivateTmp=false

[Install]
WantedBy=multi-user.target

备注:

  • Type:
    • forking: 以 fork 方式从父进程创建子进程,创建后父进程会立即退出
    • simple: 默认值,执行ExecStart指定的命令,启动主进程
  • PIDFile: 启动后进程对应的pid文件路径
  • ExecStart: 服务启动命令,命令需要绝对路径
  • ExecReload: 服务重启命令
  • ExecStop: 服务停止命令,命令需要绝对路径

③ 重新载入service服务

bash 复制代码
systemctl daemon-reload

④ 注册系统服务成功,可以使用systemctl来操作mysql服务,启动服务后最好使用ps -ef | grep mysql查看进程信息,确保正常启动。

bash 复制代码
systemctl start mysql
systemctl stop mysql

⑤ 设置mysql服务开机启动

bash 复制代码
systemctl enable mysql

⑥ 重启Linux验证

bash 复制代码
reboot
相关推荐
程序新视界11 小时前
MySQL中什么是回表查询,如何避免和优化?
mysql
薛定谔的算法16 小时前
phoneGPT:构建专业领域的检索增强型智能问答系统
前端·数据库·后端
Databend17 小时前
Databend 亮相 RustChinaConf 2025,分享基于 Rust 构建商业化数仓平台的探索
数据库
得物技术18 小时前
破解gh-ost变更导致MySQL表膨胀之谜|得物技术
数据库·后端·mysql
Java水解19 小时前
【MySQL】从零开始学习MySQL:基础与安装指南
后端·mysql
Raymond运维1 天前
MariaDB源码编译安装(二)
运维·数据库·mariadb
沢田纲吉1 天前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
RestCloud2 天前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud2 天前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence2 天前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库