# 管理用户账户

__*TiDB 账户管理*__

+ 赋予用户读取test数据库下所有表的权限:
  + `grant read on 'test'.* to 'user1'@'localhost' with grant option;`

+ 赋予用户全部权限:
  + `grant all privileges on *.* to 'user2'@'localhost' with grant option;`

+ 回收用户全部权限:
  + `revoke all privileges on *.* from 'user2'@'localhost';`

+ 查看用户权限:
  + `show grants for 'admin'@'localhost';`

+ 删除用户:
  + `drop user 'user3'@'localhost';`

-------------------------------------------------------------
1. 赋予用户读取test数据库下所有表的权限:
GRANT READ ON 'test'.* TO 'user1'@'localhost' WITH GRANT OPTION;
注意:WITH GRANT OPTION 表示'user1'@'localhost' 可以将读取test数据库下所有表的权限赋权给其他用户。

2. 赋予用户全部权限:
GRANT ALL PRIVILEGES ON *.* TO 'user2'@'localhost' WITH GRANT OPTION;

3. 回收用户全部权限:
REVOKE ALL PRIVILEGES ON *.* FROM 'user2'@'localhost';

4. 查看用户权限:
SHOW GRANTS FOR 'admin'@'localhost';
+-----------------------------------------------------+
| Grants for admin@localhost                          |
+-----------------------------------------------------+
| GRANT RELOAD, PROCESS ON *.* TO 'admin'@'localhost' |
+-----------------------------------------------------+

5. 删除用户:
DROP USER 'user3'@'localhost';
这个操作会清除用户在 mysql.user 表里面的记录项,并且清除在授权表里面的相关记录。

详细操作请参考:https://docs.pingcap.com/zh/tidb/stable/user-account-management