MySQL启动失败如何解决?

前不久在Linux中安装了MySQL,最开始采用的是手动编译的方式安装的,但是在安装的过程中总是遇到问题,所以就删除了手动安装的文件夹。
当时安装的路径在/usr/local/mysql/目录下,所以就手动删除了mysql 这个文件夹。然后改用yum命令在线安装mysql数据库,但是安装完之后(安装完之后只提示我安装完成,但不知道是否安装成功)启动MySQL服务的时候总是提示:
MySQL Daemon failed to start.
正在启动mysqld:                                                 [失败]
然后我偿试使用命令:
#mysql -u root -p
Enter password:
之后就提示错误信息:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
这里有必要说明一下的是
在之前用编译的方式安装MySQL的时候我更改过/etc/my.cnf文件,按照网上的方法在[mysql]中添加了socket=/tmp/mysql.sock
但是在删除编译方式安装的MySQL之后,我又将/my.cnf文件的socket=/tmp/mysql.sock修改为socket=/var/lib/mysql/mysql.sock
这样修改之后启动mysqld服务的时候还是失败,所以我就查找了/var/lib/mysql/mysql.sock这个文件,但发现mysql.sock文件根本不存在于/var/lib/mysql/这个目录下,因为我后来采用的是yum方式安装的mysql。所以一气之下删除了/etc/my.cnf这个文件。删除之后才发现问题还是存在。
所以在此请教高手,有没有好的解决办法。相信有好多的人也遇到过这个问题,大伙一起交流交流找出好的解决办法!

作者: fltn03   发布时间: 2011-06-10

1:
#lsof -i:3306  查看3306端口是否被其他进程占用了,如果占了,就kill掉。
2:#mv /etc/my.cnf /etc/my.cnf1 不用你修改过的配置文件,用默认的配置。
3:重新yum安装。
4:贴出错误日志的内容。

作者: 909413335   发布时间: 2011-06-10

回复 909413335
1.lsof -i:3306后没有发现任何被占用的进程
2./etc/my.cnf已经被我删除
3.yum install mysql后提示“包已经安装并且是最新版本。无需要任何处理”
4.打开/var/log/mysqld.log文件,发现里面是空的

作者: fltn03   发布时间: 2011-06-10

error-log

作者: pswen   发布时间: 2011-06-10

回复 fltn03


因为你这个启动的时候提示了日志信息,故不用看出错日志文件中的内容,2点:
1.my.cnf文件配置的路径不对,若没my.cnf的话,说明其默认的路径不存在或不对;
2.存放mysql相关内容的目录,对于系统级别的mysql账号无读写权限,建议 chow -R mysql:mysql 目录,你是rpm包安装的默认应该就是:chow -R mysql:mysql /var/lib/mysql

作者: eugene_jin   发布时间: 2011-06-10