关于mysql:MySQL-修改密码

1.改变数据库配置表

编辑/etc/my.cnf,在配置表前方退出“skip-grant-tables”,意思是跳过跳过受权表,即不再动摇账号密码的正确性,应用service mysqld restart重启mysql,输出mysql -uroot -p,间接回车进入数据库命令行。

2.更改明码

MySQL 5.7 之前的版本批改明码应用的语句是:

UPDATE user SET Password=PASSWORD('yourpassword') where USER='root';

5.7 之后的版本应该应用:

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

或者

UPDATE user SET authentication_string=PASSWORD('yourpassword') where USER='root';

3.重启除错

应用service mysqld restart再次重启mysql后,输出命令,会出错。
呈现的谬误:ERROR 1820 (HY000): Unknown error 1820。
解决:需从新用alter从新设置下明码,然而间接设置可能会呈现ERROR 1819。
起因是明码太简略,能够改变下明码默认规定。

set global validate_password_policy=0;
set global validate_password_length=4;
alter user user() identified by '123456';

4.常识引进

MySQL对设置明码进行了默认的限度(policy = 1)。

即MEDIUM,所以设置的明码必须合乎长度(默认为 8 ),且必须含有数字,小写或大写字母,特殊字符。

进入MySQL下:
(前提是validate_password插件必须曾经装置,从5.7版本开始默认装置)
首先,批改validate_password_policy参数的值

即policy = 0 ,仅限度明码的长度
set global validate_password_policy=0;

查看默认明码的长度
select @@validate_password_length;

批改默认明码的长度(这里批改为4)
set global validate_password_length=4;

应用零碎:centos 7.6

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理