【Ubuntu】修改MySQL密码5.7以及以上

mac2024-07-05  58

1、sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

     添加 skip-grant-tables

2、启动mysql,使用命令sudo /etc/init.d/mysql start

3、登陆 mysql -uroot

4、执行语句

     (1) update mysql.user set authentication_string=password('newpasswd') where user='root';

          flush privileges;

    (2) update mysql.user set host='%' where user='root';

          flush privileges;

    (3) update mysql.user set plugin="mysql_native_password" where User='root';

          flush privileges;

    (4) grant all privileges on *.* to 'root'@'%' identified by 'newpasswd with grant option;

          flush privileges;

5、vim /etc/mysql/mysql.conf.d/mysqld.cnf

     去掉  skip-grant-tables

              bing-address=127.0.0.1(其他机器可以访问)

  

6、sudo /etc/init.d/mysql restart 重启服务

7、用其他机器连接数据库试试!(记得关闭防火墙)

8、密码过于简单

   (报错:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.)原因是不符合mysql的安全要求,设置的密码需要满足密码复杂性的要求,需要大小写字母,数字组合,最小长度为8位,根据这个密码策略,需要重新设置密码,如果不想重新设置密码,继续简单的密码,则需要设置密码安全策略。  

     在数据库中需要输入:

     # 设置密码强度

        set global validate_password_policy=0;

     # 设置密码长度

        set global validate_password_length=1;

     # 修改密码

        set password = password('newpasswd');

 

 

 

 

 

 

最新回复(0)