mysql修改用户密码

来源:互联网 发布:编程语言发展趋势 编辑:程序博客网 时间:2024/06/06 13:21

修改自己的密码(root用户,其它用户应该也差不多)
方法一:

[root@localhost /]# mysqladmin -u root -p password "root"                           #修改密码为rootEnter password:                                                                     #输入旧密码[root@localhost /]# mysql -uroot -p                                                 #尝试使用旧密码登录Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)[root@localhost /]# mysql -uroot -p                                                 #输入新密码root登录Enter password: Welcome to the MariaDB monitor.  Commands end with ; or \g.Your MariaDB connection id is 19Server version: 5.5.52-MariaDB MariaDB ServerCopyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> 

方法二:
在mysql.user中使用update更新密码
方法三:
或者进入mysql后,使用set修改密码

[root@localhost /]# mysql -uroot -p                         #使用旧密码root登录Enter password: Welcome to the MariaDB monitor.  Commands end with ; or \g.Your MariaDB connection id is 19Server version: 5.5.52-MariaDB MariaDB ServerCopyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> set password=password("123456");                  #修改密码为123456,我一直很好奇为什么密码必须用password扩起来,后来知道了,新密码必须用password来加密Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> quitBye[root@localhost /]# mysql -uroot -p                                     #使用新密码123456登录Enter password: Welcome to the MariaDB monitor.  Commands end with ; or \g.Your MariaDB connection id is 20Server version: 5.5.52-MariaDB MariaDB ServerCopyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> 

root用户修改指定用户密码

方法一

MariaDB [(none)]> set password for 'bp'@'localhost'=password("123456");Query OK, 0 rows affected (0.01 sec)

方法二:

MariaDB [(none)]> update mysql.user set password=password("123") where user='bp' and host='localhost';                          #使用update修改密码,修改成功后,我打开另一个终端使用该用户登录数据库,发现无法使用新密码登录,但使用旧密码可以登录Query OK, 1 row affected (0.00 sec)Rows matched: 1  Changed: 1  Warnings: 0MariaDB [(none)]> select user,host from mysql.user;             #因为报错信息里面包含localhost,于是查看用户表信息有没有错,遗憾的是没有+---------+-----------------------+| user    | host                  |+---------+-----------------------+| aa      | %                     || aaa     | %                     || root    | 127.0.0.1             || root    | ::1                   ||         | localhost             || aa      | localhost             || bb      | localhost             || bp      | localhost             || ggo     | localhost             || my      | localhost             || mytest  | localhost             || newuser | localhost             || nome    | localhost             || root    | localhost             ||         | localhost.localdomain || root    | localhost.localdomain |+---------+-----------------------+16 rows in set (0.00 sec)MariaDB [(none)]> flush privileges;                     #后来想起来,是不是还要刷新权限。刷新之后,使用新密码可以登录Query OK, 0 rows affected (0.00 sec)

方法三:grant修改密码

MariaDB [mytest]> grant select on mytest.test to 'bp'@'localhost' identified by 'linux';Query OK, 0 rows affected (0.05 sec)                #这个不需要刷新权限。。
原创粉丝点击