/usr/local/mysql5.1/bin/mysql_safe --user=mysql &
以上是我手动配置 lnmp 环境中设置开机自启的部分,只有 mysql 无法开机启动?求教!
实在不好意思吐槽一句。
为什么不做成系统服务而要放在启动项里……
这很正常吧。
很不正常,写个 systemd 服务文件很难么?
最短 4 行就好了
chkconfig mysqld on
为什么不是作为服务启动?
你手动启动,能启动吗?
不太正常,好吧。既然要开机启动,不是手动开启的,注册成服务是最简便安全的。
从源码编译安装的话, mysqld 脚本不会自动安装的,应该自己从源码里找到这个脚本和 my.cnf ,复制到相应目录。
看 mysql log
systemd
ExecStart=/usr/local/mysql/bin/mysqld_safe --defaults-file=/path/my.cnf
为什么要自己编译 mysql , yum 安装的不行吗?
要查原因,请先分析相关的日志,不懂的话话再帖出来
楼上各种抓瞎 XD
你确定是 mysql_safe 而不是 mysqld_safe ?
先把你 rc.local 里边的启动命令,复制出来,手动执行一下,看 mysql 能不能启动
哈哈,真相了
看看 rc.local 有没执行权限
我也有了个疑问:
大家是依据什么原则,区分使用 系统自启服务(systemd, upstart 等),和 rc.local 的?
@kn007
我一般都注册成服务,开机自启的。
rc.local 我放的是 echo XXX 或 mknod /dev/ppp XXX 之类的的语句
这个不都是看操作系统支持的吗?例如现在的 Ubuntu15.xx 后开始使用 systemd 作为服务管理器
。。这种提问方式 谁知道为什么没有启动。。
看看 /var/log/messages 有啥报错
楼主这种问了问题就消失的,大家还是散了吧。
可参照
的回答的方向……
永不使用 rc.local 来启动守护进程。
如果发行版不支持 rc.local 以外的方案,那就换个好点的……
是我的疏忽,再次开机测试后发现把 mysqld_safe 写成了 mysql_safe ,实在抱歉。
谢谢大家热心回复!
一直想不明白,为什么你们不愿意用包管理器。。。
编译安装,在配置方面比较自由
你应该 rebuild 官方源码包
rebuild rpm 其实很简单。用一个新用户,然后
yumdownloader --source ...
rpm -i ....src.rpm
builddep SPEC/....spec
rpmbuild -bb SPEC/....spec
要改参数就在.spec 里改,平时升级注意不要覆盖就好了。
嗯,也是个不错的方案呢!
所以可以选择 FreeBSD 或者 gentoo 之类的,自定义起来比较方便
FreeBSD 试过了, gentoo 我会抽时间试试