mysql/mariadb知识点总结(6):密码管理

  • A+
所属分类:mysql  数据库

mysql/mariadb知识点总结(6):密码管理

这篇文章总结了mysql中常用的密码管理语句。

 

在本博客中,"mysql"是一个系列文章,这些文章主要对mysql/mariadb的常用知识点进行了总结,每一篇博客总结的知识点有所不同,具体内容可参考mysql文章列表。

mysql文章列表直达链接:mysql知识点总结

 

在MySQL中,可以使用如下几种方法修改或设置mysql用户的密码。

方法一

管理员可以在系统命令行中使用mysqladmin命令设置mysql用户的密码。

使用mysqladmin设置密码的命令语法如下:

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

比如,将root用户的密码从123123改为123456,示例如下

mysql/mariadb知识点总结(6):密码管理

 
 

如果数据库刚刚被初始化,root用户还没有密码,这种情况下,可以不指定旧密码,所以-p可以省略,直接指定新密码即可,示例如下。

mysql/mariadb知识点总结(6):密码管理

   

方法二

使用root用户登录以后,使用SET PASSWORD命令设置用户密码,命令如下

#mysql -u root

mysql> SET PASSWORD FOR 'user'@'IPorHost' = PASSWORD('newpassword');

示例如下

 
 

mysql/mariadb知识点总结(6):密码管理

 

方法三

注:使用如下方法修改用户密码时,需确定mysql的版本。

 

在mysql5.6以及之前的版本中,可以使用如下方法修改用户密码。

使用mysql的root用户登录以后,修改mysql.user表中对应用户的password字段,命令如下

update mysql.user set password = password('密码') where user='用户名';

注意,上述命令修改用户密码时,不会区分用户连接数据库时所在的host,什么意思呢,就是说,如果同时存在zsy@localhost与zsy@127.0.0.1,那么这两个用户的密码都会被更改,如果想要针对某个host下的某个用户设定密码需要在where字句中加入过滤条件。

如下示例表示不区分用户的host,修改用户的密码。

mysql/mariadb知识点总结(6):密码管理

如下示例表示指定用户与其所在的host,修改用户的密码。

mysql/mariadb知识点总结(6):密码管理

 

修改完成后,最好刷新权限。

mysql/mariadb知识点总结(6):密码管理

 

在mysql5.7中,mysql.user表的password字段已经被更改为authentication_string字段,也就是说,mysql5.7中,将使用authentication_string字段保存用户的密码。

所以,如果想要在mysql5.7中使用上述方法修改用户的密码,则需要使用如下语句。

update mysql.user set authentication_string = password('密码') where user='用户名';

   

方法四

如果忘记了mysql的root用户的密码,可以使用如下方法,重置root密码。

1.停止当前mysql进程。

2.mysql进程停止后,使用如下命令启动mysql,可以绕过用户验证。

3.完成上述步骤后,使用如下命令登录数据库

4.登录后使用之前说过的方法,修改root用户密码即可。

5.刷新后退出

6.停止数据库以后,按照正常的方式重启数据库,使用新密码登录即可。

 
 

示例如下:

mysql/mariadb知识点总结(6):密码管理

经过上述修改以后,root用户的密码已经被修改,停止mysql服务以后,重新启动即可。

mysql/mariadb知识点总结(6):密码管理

 
 

 
 

weinxin
我的微信公众号
关注"实用运维笔记"微信公众号,当博客中有新文章时,可第一时间得知哦~
朱双印

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:3   其中:访客  2   博主  1

    • avatar echo 5

      写的很详细 对于我这种老是忘记密码的人来说很受用

        • avatar 朱双印 Admin

          @echo 一般都把密码记录到文件里,再把文件加密了

            • avatar 妞妞 4

              @朱双印 KeePass 挺好用。。