网站报错Access denied for user 'root'@'localhost' -问题排查续

摘要:
我的心是如此的破碎。。。不得不称赞阿里云的售后技术支持太牛了!耐心回答我的白色小问题。综上所述,问题的原因:本地授权问题的解决方案:“您当前以MySQL安全模式启动,您登录MySQL,重新授权,并允许root帐户在本地登录MySQL。授权完成后,您可以按照之前告诉您的步骤正常启动MySQL。”具体说明如下:1。在安全模式_ Safe下启动mysql/etc/init.d/mysqldstopmysqld--跳过授权表&2。进入mysql命令行,#mysql(在安全模式下,您可以无需密码登录mysql。一开始,我很害怕小便。。。

网站报错Access denied for user 'root'@'localhost' (using password: YES)

每次的挽救办法就是:

/etc/init.d/mysqld stop

mysqld_safe --skip-grant-tables &

几乎每隔10分钟就出现一次,如下图,然后手动安全模式重启mysql。偶的内心好崩溃。。。

网站报错Access denied for user 'root'@'localhost' -问题排查续第1张

不得不赞阿里云的售后技术支持太给力!耐心回复我的一个个小白问题。

总结一下,

问题原因:本地授权问题

解决办法:“您目前启动到mysql安全模式下,您登陆mysql,重新授权一下,允许root账号从本地登陆mysql。授权完成后您再按照之前给您说的步骤,正常启动mysql即可”

 

解决过程,具体展开解释如下:

1. 安全模式启动mysql

/etc/init.d/mysqld stop

mysqld_safe --skip-grant-tables &

 

2. 进入mysql命令行,#mysql   (安全模式不需要密码即可登录mysql,开始偶还吓尿了。。。囧。。。)

3. 更改root用户的密码

     mysql>UPDATE mysql.user SET Password = password ( 'fxs_415700' ) WHERE User = 'root' ;   

     对sql语句的执行一定要加分号(囧。。。多年不写SQL代码)

     不妨用查询语句暖场 select User,Host from mysql.user WHERE User = 'root'; 查出了三条记录

4. 更改root用户的“host”值,已确保本地被授权

    mysql>update mysql.user set host='localhost' where user='root';

  (此步实际执行有错,因为host是键值,故上述select语句有必要,尤其是当没使用第三方mysql工具譬如sequel pro的话)

5. mysql>flush privileges ; 

6. 退出mysql 

    mysql>quit

7. 停止mysql, 并查看是否还有mysql进程,有的话kill掉

   #  /etc/init.d/mysqld stop 

   通过 ps aux | grep mysql 查看mysql进程id 

   # ps aux | grep mysql
   root 4043 0.0 0.0 63852 1252 pts/0 S 17:20 0:00 /bin/sh /usr/bin/mysqld_safe --skip-grant-tables
   mysql 4234 23.7 1.0 228300 21992 pts/0 Sl 17:20 7:24 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-     dir=/usr/lib64/mysql/plugin --user=mysql --skip-grant-tables --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock

   查得进程ID,kill掉
   # kill -9 4043
   # kill -9 4234

8. 启动mysql

   #/etc/init.d/mysqld start 

 

(当时因为sql语句没加;即本地授权操作3、4、5三步未执行成功,第8步执行完后,mysql启动,网站access deny错误依旧)

免责声明:文章转载自《网站报错Access denied for user 'root'@'localhost' -问题排查续》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Jenkins配置Gogs webhook插件centos中网卡的配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Java日志框架logback剖析

Logback和log4j非常相似,优点如下: 1、更快的实现 Logback的内核重写,在一些关键执行路径上性能提升10倍以上。同时,初始化内存加载也更小。 2、非常充分的测试 Logback经过数年的测试,这是简单重要的原因选择logback而不是log4j。 3、Logback-classic非常自然实现了SLF4j 因为logback-classi...

Ubuntu下root用户开启声音选项

Ubuntu下root用户登录后声音不能调整大小的解决方法在系统-->首选项-->启动应用程序-->添加名称:Audio(任意文字即可)命令:pulseaudio --start --log-target=syslog备注:(也是任意填写即可)类似windows下到开机启动程序,重新启动电脑 是不是OK了...

mysql(2)-启动mysql报错The server quit without updating PID file!

mysql启动报错 今天启动mysql又一次报错:The server quit without updating PID file!记得上次出现这个问题的时候,尝试了一些常规的方法,未果,所以索性重新进行安装。但是,相同的问题今天又出现了!!!OH, my god!恰巧今天时间充裕,尝试各种办法,终于皇天不负有心人,经过一个小时的奋战后,终于让我给搞...

MySQL数据库配置主从服务器实现双机热备

转自:http://www.cnblogs.com/cchun/p/3712637.html 一、安装MySQL 说明:在两台MySQL服务器192.168.21.169和192.168.21.168上分别进行如下操作,安装MySQL 5.5.22  二、配置MySQL主服务器(192.168.21.169) mysql -uroot -p #进...

MySQL使用分区时出现的若干问题 规格严格

1、A PRIMARY KEY must include all columns in the table’s partitioning function 如果使用分区的表包含主键或唯一索引,在创建分区时必须使用该字段;反之,表没有任何唯一索引,则可以使用可用的任一字段。 2、Constant, random or timezone-dependent e...

oracle数据库date类型和mysql数据库datetime类型匹配

oracle数据库有date类型,但是没有datetime类型 mysql数据库既有date类型也有datetime类型。Oracle数据库的date类型和mysql的date类型是不一样的,Oracle的date类型为YYYY-MM-DD hh:mm:ss和mysql中的datetime类型匹配, 而 mysql 的date类型为 yyyy-mm-dd。...