您现在的位置是:首页> 操作系统> Linux> CentOS 7

systemctl配置apache、mysql实例

  • 4650人已阅读
  • 时间:2018-11-15 08:21:01
  • 分类:CentOS 7
  • 作者:祥哥

由于祥哥的apache和mysql是自己编译安装的,现在要加到系统服务中管理,上篇文章介绍过systemctl的格式,所以来实践一下。

目录/usr/lib/systemd/system/新建

httpd.service

[Unit]
Description=httpd
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/apache2/bin/apachectl start
ExecReload=/usr/local/apache2/bin/apachectl restart
ExecStop=/usr/local/apache2/bin/apachectl stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target

mysqld.service

我们是利用mysql下面的support-files/mysql.server来启动配置的,所以如果你更改了数据的存储路径需要把mysql.server下的datadir配置了。

datadir=/usr/local/mysql/data
[Unit]
Description=MySQL Community Server
After=network.target syslog.target

[Install]
WantedBy=multi-user.target

[Service]
Type=forking
User=mysql
Group=mysql

PIDFile=/usr/local/mysql/data/localhost.localdomain.pid
PermissionsStartOnly=true
ExecStart=/usr/local/mysql/support-files/mysql.server start
ExecReload=/usr/local/mysql/support-files/mysql.server restart
ExecStop=/usr/local/mysql/support-files/mysql.server stop

这里祥哥特意说明一下mysql,当我们安装完mysql,我们可以先用

${mysql}/support-files/mysql.server start

这个来启动MYSQL,当然也可以用别的方法启动,启动成功后我们可以使用ps的命令查看PID文件路径

ps -ef|grep mysql

会看到下图,也就是上面的配置文件中的pid名称与路径不是随便写的。因为systemctl status mysqld是要监按这个进程的。

QQ图片20181115081621.png

最后重新载入单元,扫描新的或有变化的单元,使刚刚配置添加的mysqld.service生效

systemctl daemon-reload
systemctl enable mysqld #设置开机启动
systemctl start mysqld #启动mysql
systemctl stop mysql #停卡mysql
systemctl restart mysql #重启mysql


Top