在Linux系统中,有多种方法可以实现MySQL的自启动
使用systemd服务:
a. 创建一个新的systemd服务文件。以root用户身份打开终端,输入以下命令:
sudo nano /etc/systemd/system/mysql.service
b. 将以下内容粘贴到文件中,然后保存并退出:
[Unit]
Description=MySQL Server
After=network.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/sbin/mysqld --defaults-file=/etc/mysql/my.cnf
Restart=on-failure
[Install]
WantedBy=multi-user.target
c. 设置MySQL服务文件的权限:
sudo chmod 644 /etc/systemd/system/mysql.service
d. 重新加载systemd配置:
sudo systemctl daemon-reload
e. 启动MySQL服务:
sudo systemctl start mysql
f. 设置MySQL服务开机自启动:
sudo systemctl enable mysql
使用SysVinit:
a. 创建一个新的SysVinit脚本文件。以root用户身份打开终端,输入以下命令:
sudo nano /etc/init.d/mysql
b. 将以下内容粘贴到文件中,然后保存并退出。注意:请根据实际情况修改MYSQL_HOME
变量的值。
#!/bin/sh
# description: Start and stop MySQL database server
# processname: mysqld
MYSQL_HOME="/usr/local/mysql"
PIDFILE="/var/run/mysqld/mysqld.pid"
LOGFILE="/var/log/mysql/error.log"
case "$1" in
start)
echo "Starting MySQL..."
/usr/bin/mysqld --defaults-file=/etc/my.cnf > /dev/null 2>&1 &
echo $! > $PIDFILE
;;
stop)
echo "Stopping MySQL..."
kill -f $(cat $PIDFILE)
rm -f $PIDFILE
;;
*)
echo "Usage: /etc/init.d/mysql {start|stop}"
exit 1
;;
esac
exit 0
c. 设置MySQL脚本文件的权限:
sudo chmod +x /etc/init.d/mysql
d. 启动MySQL服务:
sudo service mysql start
e. 设置MySQL服务开机自启动:
sudo chkconfig mysql on
使用rc.local文件:
a. 以root用户身份打开终端,输入以下命令:
sudo nano /etc/rc.local
b. 在文件中添加以下内容(请根据实际情况修改MYSQL_HOME
变量的值):
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
MYSQL_HOME="/usr/local/mysql"
/usr/bin/mysqld --defaults-file=/etc/my.cnf > /dev/null 2>&1 &
echo $! > /var/run/mysqld/mysqld.pid
c. 设置rc.local文件的权限:
sudo chmod +x /etc/rc.local
d. 在/etc/rc.d/rc.local
文件中添加以下行(如果不存在,请创建该文件):
/etc/rc.local
e. 重启系统以使更改生效。
以上就是在Linux系统中实现MySQL自启动的三种方法。请根据您的Linux发行版和MySQL安装方式选择合适的方法。