ubuntu 上Access denied for user 'root'@'localhost' (using password:YES) 的解决方案

在ubuntu系统通过apt-get 安装好mysql 并且配置好密码后, 使用这个命令“mysql -uroot -pmyadmin”后出现以下错误:

“Access denied for user 'root'@'localhost' (using password:YES)”

直接输入“mysql” 也回报类似的错误:应该是:

“Access denied for user 'ODBC'@'localhost' (using password:NO)”。

 

关于这个问题,在网上找了一些解决方案(这个链接地址还比较不错https://www.cnblogs.com/qq78292959/p/3641972.html),也换了盘符重装了好几次,问题依旧。

有网上说打开MySQL 的 MySQL 5.5 Command Line Client,在里面进行一系列的操作即可。但是此界面进来就要输入密码:

Access <wbr>denied <wbr>for <wbr>user <wbr>'root'@'localhost' <wbr>(using <wbr>password:YES) <wbr>解决方案
无论输入什么都直接退出。没撤了。

(BTW, 尝试重装在安装MySQL的时候不设置密码。安装成功后,还是一样报错!)

网上看了一大堆的解决办法,都不行。最后,结合上面的文章和其他一些文章,终于解决问题了, 也不知道是不是最好解决手段. 欢迎"大家"之言!

 

解决步骤:

1、打开MySQL目录下的配置文件(我的目录是/etc/mysql/mysql.conf.d/mysqld.cnf, 可能有的系统是my.ini),在文件的最后添加一行“skip-grant-tables”,保存并关闭文件。

2、重启MySQL服务(我用命令 service mysql restart)。

3、在命令行中输入“mysql -uroot -p”(不输入密码),回车即可进入数据库。

4、执行,“use mysql;”使用mysql数据库。

5、执行,“update user set authentication_string=PASSWORD("rootadmin") where user='root';”(修改root的密码, 有的mysql表列名可能是password, 需要是命令:"update user set password=PASSWORD("rootadmin") where user='root';")

 

6、打开MySQL目录下的my.ini文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。

7、重启MySQL服务。( service mysql restart)

8、在命令行中输入“mysql -uroot -prootadmin”,问题搞定!

  • 13
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值