我已经mysql
在 Ubuntu 上安装了,并且文档启动时显示:
调用mysql.服务器。此脚本主要用于使用 System V 样式运行目录(即 /etc/init.d 和运行级别特定目录)的系统启动和关闭时,通常以 名称安装
mysql
。mysql.服务器脚本通过调用来启动服务器mysqld_safe。
但是,mysql
中的文件/etc/init.d
只是简单地链接到/lib/init/upstart-job
,并且mysql.conf
中的文件/etc/init
是这样的:
# MySQL Service
description "MySQL Server"
author "Mario Limonciello <[email protected]>"
start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]
respawn
respawn limit 2 5
env HOME=/etc/mysql
umask 007
# The default of 5 seconds is too low for mysql which needs to flush buffers
kill timeout 300
pre-start script
#Sanity checks
[ -r $HOME/my.cnf ]
[ -d /var/run/mysqld ] || install -m 755 -o mysql -g root -d /var/run/mysqld
/lib/init/apparmor-profile-load usr.sbin.mysqld
LC_ALL=C BLOCKSIZE= df --portability /var/lib/mysql/. | tail -n 1 | awk '{ exit ($4<4096) }'
end script
exec /usr/sbin/mysqld
post-start script
for i in `seq 1 30` ; do
/usr/bin/mysqladmin --defaults-file="${HOME}"/debian.cnf ping && {
exec "${HOME}"/debian-start
# should not reach this line
exit 2
}
statusnow=`status`
if echo $statusnow | grep -q 'stop/' ; then
exit 0
elif echo $statusnow | grep -q 'respawn/' ; then
exit 1
fi
sleep 1
done
exit 1
end script
我有两个问题:
- 文档有误吗?
- 我该如何配置
mysql
才能在 下启动mysqld_safe
?
答案1
现在,mysqld_safe 是 MySQL 5.5 的一部分。我不能代表 Ubuntu 谈论具体的事情。
首先,确定 mysqld_safe 是否存在并且可以访问。运行以下命令:
which mysqld_safe
如果它返回 mysqld_safe 程序的绝对路径,例如
[root@**** mysql]# which mysqld_safe
/usr/bin/mysqld_safe
那么你可以更换
exec /usr/sbin/mysqld
和
exec /usr/sbin/mysqld_safe
然后,service mysql start
。
请先在 Dev/Staging 服务器上执行此操作。需要强调的是,我不能代表 Ubuntu 发言。