mysql重建某个用户账号(ERROR 1396 (HY000): Operation CREATE USER failed)

说明:在MariaDB中删除了用户molewan后,业务又有需求重新建立一个名为molewan的用户

1、查看数据库,发现已经没有molewan用户了

1
2
3
4
5
6
7
8
MariaDB [mysql]> select user,host from mysql.user;
+----------+------------+
| user     | host       |
+----------+------------+
| molewan1 | 10.10.10.% |
| admin    | localhost  |
+----------+------------+
2 rows in set (0.00 sec)

2、新建一个molewan的用户,报错

1
2
3
4
5
MariaDB [mysql]> create user molewan@'10.10.10.%' identified by 'molewan';
ERROR 1396 (HY000): Operation CREATE USER failed for 'molewan'@'10.10.10.%'
想起来删除molewan用户的时候,是通过delete命令删除的
MariaDB [mysql]> delete from mysql.user where user="molewan1" and host ="10.10.10.%";
MariaDB [mysql]> flush privileges;

3、查了下资料,发现如果要彻底不适用某个用户,推荐使用drop命令进行

1
2
3
4
MariaDB [mysql]> drop user molewan@'10.10.10.%';
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

补充说明:DROP USER不会自动中止已连接的用户会话,也就是说被删的用户如果在删前已经连接上了服务器,并且连接尚未中断,那它此时还能继续执行一定的操作,只是它的身份已经变成了黑户。

4、重建molewan的用户

1
2
3
4
5
6
7
8
9
10
MariaDB [mysql]> create user molewan@'10.10.10.%' identified by 'molewan';
Query OK, 0 rows affected (0.01 sec)
MariaDB [mysql]> select user,host from mysql.user;
+---------+------------+
| user    | host       |
+---------+------------+
| molewan | 10.10.10.% |
| admin   | localhost  |
+---------+------------+
2 rows in set (0.00 sec)










本文转自 冰冻vs西瓜 51CTO博客,原文链接:http://blog.51cto.com/molewan/1940610,如需转载请自行联系原作者
上一篇:【译】性能调优之后,进一步的验证和分析


下一篇:查找域名、由名字查找某个熟知的端口、由名字查找协议