以前屢次在centos7環境下配置mysql開機自啓動出現了錯誤、現留下篇文章已作記錄html
1、centos7與centos6相比有什麼不一樣:mysql
1 在centos7中服務不在是用service這個命令來啓動與中止,也再也不用chkconfig來設置開機啓動與否!sql
在centos7中全部對服務的管理都集中到了systemctl當中;systemctl再也不是合以前同樣依賴/etc/init.d/下centos
的腳本,它是經過配置文件來完成對服務的管理的;post
2、建立systemctl管理mysql的配置文件:url
1 建立配置文件centos7
touch /usr/lib/systemd/system/mysql.service
systemctl對配置文件的後綴名有所要求、這個文件的後綴名要是以.service結尾的;固然因爲它默承認以省略後綴,因此你也能夠不指定後綴名。spa
不要問我爲何這個刻意的指出來,我搞了兩天就是由於把service 寫成了server ,因此一直沒有成功;code
3、配置文件樣例:server
1 目前我機器上的配置文件以下
[Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf LimitNOFILE = 5000 #Restart=on-failure #RestartPreventExitStatus=1 #PrivateTmp=false
在systemctl配置文件中#號用來表示註釋,這裏最重要的一行是ExecStart它表示當systemctl去啓動mysql時要執行的命令。
在你的系統上只要換掉這一句就能夠了。
4、經過systemctl來啓動mysql:
[root@workstudio system]# systemctl start mysql [root@workstudio system]# ps -ef | grep mysql mysql 9171 1 4 17:08 ? 00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf root 9205 8508 0 17:08 pts/0 00:00:00 grep --color=auto mysql
5、經過systemctl 來設置mysql開機啓動:
[root@workstudio system]# systemctl enable mysql Created symlink from /etc/systemd/system/multi-user.target.wants/mysql.service to /usr/lib/systemd/system/mysql.service. [root@workstudio system]#