使用mysql server 一段时间,每每下达 /etc/rc.d/init.d/mysql stop之后,都没有办法再使用/etc/rc.d/init.d/mysql start 重新启动,必须重新启动linux让他自己启动。虽然不是大问题,但总觉得奇怪,前两天换装5.0.51a发现问题更严重,竟然无法使用管理工具展开table 结构。心想,认命吧!还是好好处理一下~以下就来看看处理过程吧!
参考网路上许多的讨论,众说纷纭。
我的作法是先去看看mysql的启动错误,
一般预设是在 /var/lib/mysql 底下,会有一个 机器名称(FQDN).err的档案,打开文件发现,原来启动时,mysql 要去使用 /root/tmp,但是理所当然是权限不足啰!
本想直接开放 /root/tmp 的权限给 mysql,但又觉得不妥,所以决定自己重新设定tmp的路径:
1.建立 tmp 目录在 /var/lib/mysql底下
mkdir /var/lib/mysql/tmp
2.授权 tmp 修改拥有者给 mysql
chown mysql:mysql /var/lib/mysql/tmp
3.修改 MySQL Server的设定档 /etc/my.cnf
在 [mysqld] 项目下 增加指定 tmpdir
vi /etc/my.cnf
加入 tmpdir=/var/lib/mysql/tmp
存档离开
这样就好了!
试试看停用 server 再启用~
另外,这问方式也可处理掉 MySQL Server 5.0.51a 无法用管理工具展开表格结构以及使用怪异的问题~