龙空技术网

修改mysql root用户密码的方式有哪些?

it村男主任 187

前言:

而今你们对“mysql修改密码命令行”可能比较关怀,看官们都想要了解一些“mysql修改密码命令行”的相关文章。那么小编在网摘上收集了一些关于“mysql修改密码命令行””的相关知识,希望同学们能喜欢,你们快快来学习一下吧!

如果password()函数不可用,使用md5()函数

方法1: SET PASSWORD命令

set password for ‘用户名’@’localhost’ = password('新密码');

mysql> set password for ‘root’@’localhost’ = password('test6666');

注意:新安装的mysql可能没有 ‘root’@’localhost’用户,需要grant all privileges 创建并授权用户

方法2:UPDATE命令修改user表

注意5.7及以后版本没有password字段了,密码字段变为authentication_string

mysql> use mysql;mysql> update user set password=password('test6666') where user='root' and host='localhost';mysql> flush privileges;

5.7及以后版本要使用以下命令

update user set authentication_string=password('test6666') where user='root' and host='localhost'

方法3:mysqladmin命令

mysqladmin -u 用户名 -p 旧密码 password 新密码

mysqladmin -u root -p '123456' password 'test6666'

方法4:alter user修改密码

alter mysql.user 'root'@'localhost' identified by 'test6666';

注意:Mysql5.7及以后有自己的密码策略,不符合规则的密码执行会报错。需要设置一个符合Mysql密码策略的复杂密码。

Mysql5.7及以后默认密码规则:

密码长度不能少于8位;必须包含大小写字母、数字和特殊字符;密码必须与用户名不同且不能为纯数字或纯字母。

方法4:在忘记root密码的时候,可以这样

以windows为例:(linux相同,只是文件位置不同)

1. 关闭正在运行的MySQL服务。

2. 打开cmd窗口,转到mysql\bin目录。

3. 输入如下命令

mysqld --skip-grant-tables 。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。

4.新开一个cmd窗口,转到mysql\bin目录。

5. 输入mysql进入

6. 切换到mysql数据库:

 use mysql;

6. 改密码:

//mysql5.7之前的修改方法update user set password=password('test6666') where user='root' and host='localhost' ;//5.7及以后的版本修改方法update mysql.user set authentication_string=password('test6666') where user='root' and host='localhost'。

mysql5.7密码的字段不叫password而是authentication_string

7. 刷新权限:flush privileges; 

如果在重置密码(跳过密码验证)过程中 第6步没有root用户,那么使用grant all privileges on *.* to 'root'@'localhost';命令创建用户;注意在跳过密码验证期间使用CREATE USER 'name'@'host' IDENTIFIED BY 'password'命令无法创建用户

您的赞和关注是对我创作的最大肯定谢谢大家

标签: #mysql修改密码命令行 #查看mysqlroot密码 #windows mysql 密码 #怎样给mysql设置密码 #mysql56设置密码