重置mysql
MySQL下mysql.sock丢失丢失的原因一般是因为配置文件不一致的原因,mysqld 错误启动,mysqld_safe 会清除一次mysql.sock 。解决方法是:
判断一般人解决故障时没有切换到mysql用户,造成权限有问题,无法创建mysql授权表,所以也就无法创建/tmp/mysql.sock 和hostname.pid文件。因此,总结解决方法如下(注: 使用root也可以):
#su mysql
$/usr/local/bin/mysql_install_db //重建授权表
$/usr/local/bin/mysqld_safe & //& 后台运行,不用重新clone一个窗口
$/usr/local/bin/mysql //测试
mysq>bye;
通过上面的操作,应该会生成一个mysql.sock。具体目录我这边是:/var/lib/mysql/mysql.sock
。(PS:有的人会是:/tmp/mysql.sock
)这个路径在/etc/my.cnf
里面会有对应的配置
[mysqld]
scoket=/var/lib/mysql/mysql.sock
修改root密码
通过上面的操作,直接mysql就能进入系统了。这不我们想要的,我们希望有密码。
mysql;
mysql>update set user password=PASSWORD('123456') where user='root';
mysql>flush privileges;
mysql>quit;
现在在登录就需要密码了。OK 大功告成!!!