MySQL空密码用户清理

假设你想管理下用户,只记得某个库里的某个表管理用户的登录,你需要这么做:

  • 前提是有足够权限的账户,没有就skip刷root密码吧
[root@ax-01 ~]# mysql -uroot -p
Enter password:

mysql> show databases;   //查所有库的名字
+--------------------+
| Database           |
+--------------------+
| information_schema |
| cmsdb              |
| discuz             |
| mysql              |    //你看到mysql库,想起来就这个库里,但是不知道该查那一个表
| performance_schema |
| test               |
| wpdb               |
+--------------------+

mysql> use mysql;    //选择mysql库
mysql> show tables;    //查mysql里面的所有表
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |    //你看到user表,想起来应该在这里,但是不知道查那个字段
+---------------------------+

mysql> desc user;    //查看所有user下的字段名(表头)
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Field                  | Type                              | Null | Key | Default               | Extra |
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Host                   | char(60)                          | NO   | PRI |                       |       |
| User                   | char(16)                          | NO   | PRI |                       |       |
| Password               | char(41)                          | NO   |     |                       |       |
看到这里你感觉需要了解user,host,password这三个字段,因为登陆的时候要用到

mysql> select user,host,password from mysql.user;    //查看这三个字段的内容
+------------+-----------+-------------------------------------------+
| user       | host      | password                                  |
+------------+-----------+-------------------------------------------+
| root       | localhost | *8E1A3402D66F8DDD8D9D19596B706C6D238C0F34 |
| root       | ax-01     |                                           |
| root       | 127.0.0.1 |                                           |
| root       | ::1       |                                           |
|            | localhost |                                           |
|            | ax-01     |                                           |
| wpuser     | 127.0.0.1 | *E4D18EEE7AEB0071BDB1D931CD44AA9AE0D05293 |
| discuzuser | 127.0.0.1 | *F47A72DB156C9E3F76410F41AC68CE966ACD6BDA |
| cmsuser    | 127.0.0.1 | *A9A4F564B109C6ECCF5EC6E2EB11DBD8925FEEDF |
+------------+-----------+-------------------------------------------+
看到这里,你发任意用户(空用户名)不需要密码就可以登录。显然不行,需要删掉。

删东西前要养成备份的好习惯
[root@ax-01 ~]# mysqldump -uroot -paxianglinux mysql user > /tmp/user.sql

mysql> delete from mysql.user where password='';    //删掉
mysql> select user,host,password from mysql.user;    //再看
+------------+-----------+-------------------------------------------+
| user       | host      | password                                  |
+------------+-----------+-------------------------------------------+
| root       | localhost | *8E1A3402D66F8DDD8D9D19596B706C6D238C0F34 |
| wpuser     | 127.0.0.1 | *E4D18EEE7AEB0071BDB1D931CD44AA9AE0D05293 |
| discuzuser | 127.0.0.1 | *F47A72DB156C9E3F76410F41AC68CE966ACD6BDA |
| cmsuser    | 127.0.0.1 | *A9A4F564B109C6ECCF5EC6E2EB11DBD8925FEEDF |
+------------+-----------+-------------------------------------------+
mysql> flush privileges; 
mysql> quit;

转载于:https://my.oschina.net/u/3579690/blog/1516636

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值