我用到的数据库是mysql8

环境是centos7


mysql出现(using password:YES)_免密码mysql出现(using password:YES)_免密码_02

  • 关闭mysql服务


service mysqld stop


  • 修改mysql为免密码登陆


vi /etc/my.cof
​在最下面加上skip-grant-tables​


  • 启动mysql服务,并登陆


service mysqld start
mysql -u root -p
​密码为空,直接回车​


  • 查看mysql的用户及密码


use mysql;
select host, user, authentication_string, plugin from user;
​将authentication_string字段设置为空,就是把密码设置为空​​update user set authentication_string='' where user='root';


  • 退出mysql,找到(vi)刚才在​​/etc/mycnf​​最后加的哪一行(dd)删除
  • 重启mysql服务,(因为此时是免密码的模式,所以要重启下)


service mysqld stop
service mysqld start


  • 再次使用root登陆,此时不是免密码登陆的而是密码为空


mysql -u root -p
​passwd 直接回车就可以登陆​


  • 修改root用户的密码


ALTER user 'root'@'localhost' IDENTIFIED BY 'Mynameis7#'



  • 设置成功,此时使用mysql -u root -p ,然后输入密码就可以登陆,保险起见可以重启一下数据库。


梅花香自古寒来