现在mysql出问题了,出现的问题是:



1:客户端连接:Can't connect to MySQL server on '10.14.39.220'



2.本地服务器登录,mysql -uroot -phqn



ERROR 1045 (28000):Access denied for user 'root'@'localhost' (using Password:YES)



无法登录mysql



3.停止mysql: sudo /etc/init.d/mysql stop



Stopping MySQL database server: mysqld failed!






我的解决方法:独到解决方法,由于没法正常停止mysql只能够强制停止,kill线程的方法。



1.找到线程: ps aux | grep mysql



2.杀死线程:sudo kill 9150



3.开启跳跃授权模式



mysqld_safe --user=mysql --skip-grant-tables --skip-networking &



4.登录mysql



mysql -u root mysql



下面是截图:






mysql 无法登录 mysql不能登录_mysql



登录mysql之后:


查看mysql账户密码:


 select host,user,password from mysql.user;




mysql 无法登录 mysql不能登录_重启_02



3、命令行修改root密码:
    mysql>  UPDATE mysql.user SET password=PASSWORD('新密码') WHERE User='root';
    mysql> FLUSH PRIVILEGES;




4、很久都么有解决的问题,被我弄好了,我的mysql不要再出问题了。


   详细叙述解决过程。


   非授权模式登录到musql之后,接着我就查看了mysql 的账户和密码:


  (1)


    select host,user,password from mysql.user;


    



mysql 无法登录 mysql不能登录_MySQL_03



(2)结果大出我所料,于是我就修改了密码


  mysql>  UPDATE mysql.user SET password=PASSWORD('geopass') WHERE User='root';
    mysql> FLUSH PRIVILEGES;


  修改之后查看密码,发现根本没有变化,我就怀疑是否要重启mysql.


(3)出来之后,我试着测试密码变化与否,果然,密码变成我所改的密码了。


    所以我就试着更改远程登陆的权限,变成任何人都可以登陆;


     mysql >  GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;


     mysql >  FLUSH PRIVILEGES;


    mysql >  EXIT 


    这次竟然奇迹般修改成功了,以前都无法修改的。





mysql 无法登录 mysql不能登录_MySQL_04



(4)


    然后我就退出mysql,想常识重启myqsl


    sudo /etc/init.d/mysql stop; 


    重启失败了


    接着就尝试强制杀死mysql进程


ps aux | grep mysql


   sudo kill 13027


    结果杀死也失败了


  我就重新查看mysql进程,结果少了一个进程,少的那个并不是我杀死的进程。


然后我就阐释stop mysql进程


sudo /etc/init.d/mysql stop; 


居然成功stop 了



mysql 无法登录 mysql不能登录_mysql 无法登录_05




(5)开启mysql进程


查看进程,发现mysql进程消失了。


我就正常登陆mysql


mysql -uroot -pgeopass 


成功登陆进去了



mysql 无法登录 mysql不能登录_MySQL_06




(6)查看密码,我仍然不知道密码是啥,不过客户端可以访问了





mysql 无法登录 mysql不能登录_MySQL_07