• ADADADADAD

    MySQL修改账户的密码方法[ mysql数据库 ]

    mysql数据库 时间:2024-12-03 12:14:45

    作者:文/会员上传

    简介:

    MySQL提供了多种修改账户密码的方式:
    1、可以用mysqladmin命令在命令行指定密码
    shell>mysqladmin-uuser_name-hhost_namepassword"newpwd"该命令重设密码的账户为user表内匹

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    MySQL提供了多种修改账户密码的方式:
    1、可以用mysqladmin命令在命令行指定密码
    shell>mysqladmin-uuser_name-hhost_namepassword"newpwd"该命令重设密码的账户为user表内匹配User列的user_name和Host列你发起连接的客户端的记录。
    比如把密码改为:root123[root@mysql1~]#mysqladmin-urootpassword"root123"-pEnterpassword:--这里需要输入原来的老密码
    2、为账户赋予密码的另一种方法是执行SETPASSWORD语句
    mysql>SETPASSWORDFOR'jeffrey'@'%'=PASSWORD('biscuit');
    只有root等可以更新mysql数据库的用户可以更改其它用户的密码。如果你没有以匿名用户连接,省略FOR子句便可以更改自己的密码:
    mysql>setpassword=password('mysql');QueryOK,0rowsaffected(0.01sec)
    mysql>exitBye[root@mysql1~]#mysql-uroot-pEnterpassword:--此时输入老密码会出现如下提示ERROR1045(28000):Accessdeniedforuser'root'@'localhost'(usingpassword:YES)[root@mysql1~]#mysql-uroot-pEnterpassword:--此时输入新密码连接成功WelcometotheMySQLmonitor.Commandsendwith;or\g.YourMySQLconnectionidis11Serverversion:5.6.30Sourcedistribution
    Copyright(c)2000,2013,Oracleand/oritsaffiliates.Allrightsreserved.
    OracleisaregisteredtrademarkofOracleCorporationand/oritsaffiliates.Othernamesmaybetrademarksoftheirrespectiveowners.
    Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.
    mysql>
    3、可以在全局级别使用GRANTUSAGE语句(在*.*)来指定某个账户的密码而不影响账户当前的权限
    mysql>GRANTUSAGEON*.*TO'jeffrey'@'%'IDENTIFIEDBY'biscuit';
    一般情况下最好使用上述3种方法来指定密码,你还可以直接修改user表:
    要想在创建新账户时建立密码,在Password列提供一个值:
    shell>mysql-urootmysqlmysql>INSERTINTOuser(Host,User,Password)->VALUES('%','jeffrey',PASSWORD('biscuit'));mysql>FLUSHPRIVILEGES;
    要想更改已有账户的密码,使用UPDATE来设置Password列值:
    shell>mysql-urootmysqlmysql>UPDATEuserSETPassword=PASSWORD('bagel')->WHEREHost='%'ANDUser='francis';mysql>FLUSHPRIVILEGES;当你使用SETPASSWORD、INSERT或UPDATE指定账户的密码时,必须用PASSWORD()函数对它进行加密。(唯一的特例是如果密码为空,你不需要使用PASSWORD())。需要使用PASSWORD()是因为user表以加密方式保存密码,而不是明文。如果你忘记了,你可能会象这样设置密码:
    shell>mysql-urootmysqlmysql>INSERTINTOuser(Host,User,Password)->VALUES('%','jeffrey','biscuit');mysql>FLUSHPRIVILEGES;
    结果是密码'biscuit'保存到user表后没有加密。当jeffrey使用该密码连接服务器时,值被加密并同保存在user表中的进行比较。但是,保存的值为字符串'biscuit',因此比较将失败,服务器拒绝连接:
    shell>mysql-ujeffrey-pbiscuittestAccessdenied如果你使用GRANT...IDENTIFIEDBY语句或mysqladminpassword命令设置密码,它们均会加密密码。在这种情况下,不需要使用PASSWORD()函数。
    MySQL修改账户的密码方法.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysql修改方法