您的位置:黄埔信息网 >生活常识 > 怎样修改密码(又忘记密码啦?)

怎样修改密码(又忘记密码啦?)

时间:2021-07-25 01:33:21来源:黄埔信息网

怎样修改密码(又忘记密码啦?)

在日常使用数据库的过程中,难免会遇到需要修改账号密码的情景,比如密码太简单需要修改、密码过期需要修改、忘记密码需要修改等。本篇文章将会介绍需要修改密码的场景及修改密码的几种方式。

1.忘记 root 密码

忘记 root 密码的场景还是比较常见的,特别是自己搭的测试环境经过好久没用过时,很容易记不得当时设置的密码。这个时候一般常用的方法是跳过权限验证,然后更改 root 密码,之后再启用权限验证。以 MySQL 5.7 版本为例简单讲下主要过程:

首先修改配置文件,在[mysqld]部分加上一句:skip-grant-tables ,加上此参数的目的是跳过权限验证。然后重启数据库,数据库再次启动后,我们就可以不用密码直接登录数据库修改密码了。

#skip-grant-tables模式下修改root密码[root@host~]#mysqlWelcometotheMySQLmonitor.Commandsendwith;or\g.YourMySQLconnectionidis16Serverversion:5.7.23-logMySQLCommunityServer(GPL)Copyright(c)2000,2018,Oracleand/oritsaffiliates.Allrightsreserved.OracleisaregisteredtrademarkofOracleCorporationand/oritsaffiliates.Othernamesmaybetrademarksoftheirrespectiveowners.Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.mysql>updatemysql.usersetauthentication_string=password('xxxxxx')whereuser='root'andhost='localhost';QueryOK,0rowsaffected,1warning(0.00sec)Rowsmatched:1Changed:0Warnings:1mysql>flushprivileges;QueryOK,0rowsaffected(0.01sec)

修改完 root 密码后,再次去除 skip-grant-tables 参数,然后重启下数据库即可。

2.几种修改密码的方法

除去忘记密码,可能还有其他情景需要修改密码,这时候就可以采取普通方式修改密码了。还是以 MySQL 5.7 版本为例,介绍几种常用的修改密码的方法。

使用 alter user 修改

比如如果想更改 testuser 账号的密码,我们可以使用 root 账号登录,然后执行 alter user 命令更改 testuser 账号的密码。

mysql>alteruser'testuser'@'%'identifiedby'Password1';QueryOK,0rowsaffected(0.01sec)mysql>flushprivileges;QueryOK,0rowsaffected(0.00sec)

使用 SET PASSWORD 命令

使用 SET PASSWORD 修改密码命令格式为 SET PASSWORD FOR 'username'@'host' = PASSWORD('newpass'); 同样是使用 root 账号可修改其他账号的密码。

mysql>SETPASSWORDFOR'testuser'@'%'=PASSWORD('Password2');QueryOK,0rowsaffected,1warning(0.00sec)mysql>flushprivileges;QueryOK,0rowsaffected(0.00sec)

使用 mysqladmin 修改密码

使用 mysqladmin 命令修改账号密码格式为 mysqladmin -u用户名 -p旧密码 password 新密码

[root@host~]#mysqladmin-utestuser-pPassword2passwordPassword3mysqladmin:[Warning]Usingapasswordonthecommandlineinterfacecanbeinsecure.Warning:Sincepasswordwillbesenttoserverinplaintext,usesslconnectiontoensurepasswordsafety.[root@host~]#mysql-utestuser-pPassword3mysql:[Warning]Usingapasswordonthecommandlineinterfacecanbeinsecure.WelcometotheMySQLmonitor.Commandsendwith;or\g.YourMySQLconnectionidis2388Serverversion:5.7.23-logMySQLCommunityServer(GPL)Copyright(c)2000,2018,Oracleand/oritsaffiliates.Allrightsreserved.OracleisaregisteredtrademarkofOracleCorporationand/oritsaffiliates.Othernamesmaybetrademarksoftheirrespectiveowners.Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.mysql>

直接 update user 表

其实 MySQL 所以的账号信息都存储在 mysql.user 表里面,我们也可以直接通过 update user 表来修改密码。

#5.7及之后版本mysql>updatemysql.usersetauthentication_string=password('Password4')whereuser='testuser'andhost='%';QueryOK,1rowaffected,1warning(0.06sec)Rowsmatched:1Changed:1Warnings:1

关于我们| 广告服务| 诚聘英才| 联系我们| 友情链接| 免责申明| 网站地图
Powered by www.huangpujs.cn 版权所有