总结linux下使用mysql数据库出现 “Access denied for user 'root'@'localhost' (using password: YES)”

本文解决在linux下安装mysql或者搭建环境时出现mysql的root用户进不去mysql的问题。在这儿我给你们总结了俩种方法,本人亲试,童叟无欺。


方法一:安全模式的方法

解决方法如下:

1、停止mysql服务:

      service mysql stop

2、后台安全模式登陆mysql:

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

3、新开一个窗口,直接在命令行输入mysql,登陆;

4、修改mysql密码:

      update mysql.user set password=PASSWORD('123456') where user='root';

5、刷新、退出:

      flush privileges;

      quit;

6、重启mysql服务:

      service mysql restart;


方法二:使用内置用户密码登入mysql修改user表

解决方法如下:

既然我们无法通过root用户进入MySQL,那我们就只能通过其他用户登录MySQL了。在我们下载安装MySQL的时候系统给我们创建了一个用户。打开 /etc/mysql/debian.cnf

内容如下:

                                 # Automatically generated for Debian scripts. DO NOT TOUCH!
                                 [client]
                                 host     = localhost
                                 user     = debian-sys-maint
                                 password = pdVNwcfOhr6PX2o2
                                 socket   = /var/run/mysqld/mysqld.sock

                                

                                 [mysql_upgrade]
                                 host     = localhost
                                 user     = debian-sys-maint
                                 password = pdVNwcfOhr6PX2o2
                                 socket   = /var/run/mysqld/mysqld.sock


      我们找到client的user和password,然后在终端输入 mysql -u debian-sys-maint -p 然后回车输入 pdVNwcfOhr6PX2o2。这样就进入了MySQL了,进入之后我们 use mysql,然后打开user表。发现里面有用户的信息其中就有root但是密码是被mysql5加密的。(这个密码解密需要付费就放弃了)。
        接下来就简单了,既然我们不知道root密码。那就直接改就好了。在user表下输入set password for 'root'@'localhost'=password('你的密码'); 然后重启mysql服务输入mysql -u root -p 回车 你的密码。就可以了。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值