linux下mysql自动启动命令
-
在Linux下,可以通过设置MySQL自动启动来保证MySQL在系统重启后可以自动启动。
要实现MySQL自动启动,可以使用以下两种方法:
1. 使用Systemd管理器(适用于使用Systemd的Linux发行版,如CentOS 7、Ubuntu 16.04及以上版本):
– 创建一个文件 `/etc/systemd/system/mysql.service`,并将以下内容复制到文件中:
“`shell
[Unit]
Description=MySQL Server
After=network.target[Service]
ExecStart=/usr/bin/mysqld_safe –user=mysql
Restart=always
RestartSec=3
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=mysql[Install]
WantedBy=multi-user.target
“`
– 然后通过执行以下命令来启动MySQL服务:
“`shell
sudo systemctl enable mysql
sudo systemctl start mysql
“`2. 使用 SysV Init(适用于CentOS 6及以下版本):
– 在 /etc/init.d/ 目录下创建一个脚本文件,文件名通常为 mysql,然后将以下内容复制到文件中:
“`shell
#!/bin/bash
#
# mysqld Startup script for mysqld
#
# chkconfig: – 64 36
# description: MySQL database server.
# processname: mysqld
# config: /etc/my.cnf
# pidfile: /var/run/mysqld/mysqld.pid# Source function library.
. /etc/rc.d/init.d/functions# Source networking configuration.
. /etc/sysconfig/network# Check that networking is up.
[ “$NETWORKING” = “no” ] && exit 0# MySQL configuration.
MYSQL_HOME=/usr/local/mysql
MYSQL_USER=mysql# Check if mysql is installed and configured properly.
if [ ! -x “$MYSQL_HOME/bin/mysqld_safe” ]; then
exit 0
fi# Start mysqld
start() {
if [ -f $MYSQL_HOME/mysql.pid ] && kill -0 `cat $MYSQL_HOME/mysql.pid` > /dev/null 2>&1; then
echo “MySQL is already running.”
return 0
fidaemon $MYSQL_HOME/bin/mysqld_safe –datadir=$MYSQL_HOME/data –pid-file=$MYSQL_HOME/mysql.pid –user=$MYSQL_USER
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/mysql
return $RETVAL
}# Stop mysqld
stop() {
if [ ! -f $MYSQL_HOME/mysql.pid ]; then
echo “MySQL is not running.”
return 0
fikill `cat $MYSQL_HOME/mysql.pid`
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/mysql
return $RETVAL
}# Restart mysqld
restart() {
stop
start
}# main
case “$1″ in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $”Usage: $0 {start|stop|restart}”
exit 1
esacexit $?
“`
– 设置可执行权限:
“`shell
sudo chmod +x /etc/init.d/mysql
“`
– 添加启动项到系统服务:
“`shell
sudo chkconfig –add mysql
“`
– 启动MySQL服务:
“`shell
sudo service mysql start
“`无论使用哪种方法,启动MySQL服务后,它将会在系统重启时自动启动。你可以通过执行 `sudo systemctl status mysql` (对于Systemd) 或 `sudo service mysql status` (对于SysV Init) 来检查MySQL服务的状态。
2年前 -
在Linux下,可以使用以下命令来自动启动MySQL服务:
1. 使用service命令
在大多数Linux发行版中,可以使用service命令来管理系统服务。要自动启动MySQL服务,可以运行以下命令:
“`
sudo service mysql start
“`
这将启动MySQL服务并将其设置为在系统启动时自动启动。2. 使用systemctl命令
对于使用systemd服务管理器的Linux发行版(如Ubuntu 16.04及更高版本),可以使用systemctl命令来管理系统服务。要自动启动MySQL服务,可以运行以下命令:
“`
sudo systemctl enable mysql
sudo systemctl start mysql
“`
第一条命令将MySQL服务添加到系统启动时要启动的服务列表中,第二条命令将启动MySQL服务。3. 使用chkconfig命令
对于使用SysVinit服务管理器的Linux发行版(如CentOS 6),可以使用chkconfig命令来管理系统服务。要自动启动MySQL服务,可以运行以下命令:
“`
sudo chkconfig mysqld on
sudo service mysqld start
“`
第一条命令将MySQL服务设置为在系统启动时自动启动,第二条命令将启动MySQL服务。4. 使用开机启动脚本
另一种方法是手动创建一个开机启动脚本,以便在系统启动时启动MySQL服务。以下是一个示例脚本:
“`
#!/bin/bash
/etc/init.d/mysql start
“`
将此脚本保存为/etc/init.d/mysql_autostart,并确保其具有可执行权限(可以使用chmod命令进行设置)。然后,可以使用以下命令将脚本添加到系统启动脚本中:
“`
sudo update-rc.d mysql_autostart defaults
“`
这将使MySQL服务在系统启动时自动启动。5. 使用cron作业
还可以使用cron作业来在系统启动时启动MySQL服务。打开cron配置文件(通常是/etc/crontab)并添加以下行:
“`
@reboot root /etc/init.d/mysql start
“`
这将使MySQL服务在系统启动时启动。无论使用哪种方法,都要确保在设置自动启动之前,已经正确地安装并配置了MySQL服务器。
2年前 -
在Linux系统下,可以使用systemd服务管理来实现MySQL自动启动。下面是具体的操作流程:
1. 编写启动脚本:
首先,需要在/etc/init.d/目录下创建一个启动脚本,比如命名为mysql,在该脚本中编写MySQL的启动、停止、重启等命令。以下是一个示例脚本:“`bash
#!/bin/bashMYSQL=/usr/local/mysql/bin/mysql
MYSQL_USER=root
MYSQL_PASSWORD=your_passwordstart(){
$MYSQL -u$MYSQL_USER -p$MYSQL_PASSWORD mysqld_safe &
}stop(){
$MYSQL -u$MYSQL_USER -p$MYSQL_PASSWORD mysqladmin shutdown
}case “$1” in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 1
start
;;
*)
echo “Usage: $0 {start|stop|restart}”
exit 1
esac
exit 0
“`2. 赋予脚本可执行权限:
使用以下命令给脚本赋予可执行权限:“`
sudo chmod +x /etc/init.d/mysql
“`3. 添加自启动服务:
使用以下命令将该脚本添加为自启动服务:“`
sudo systemctl enable mysql
“`执行以上命令后,会在/etc/systemd/system目录下生成一个mysql.service文件,实现了MySQL的自启动。
4. 控制MySQL服务:
使用以下命令控制MySQL服务的启动、停止、重启等:“`
sudo systemctl start mysql # 启动MySQL服务
sudo systemctl stop mysql # 停止MySQL服务
sudo systemctl restart mysql # 重启MySQL服务
“`通过上述步骤,就可以实现在Linux系统下MySQL的自动启动了。
2年前