用户信息存储在mysql数据库的用户系统表中。
一个用户由两部分组成:用户名和用户连接的主机,因此要获取用户列表,需要同时包含用户表中的用户和主机列:
mysql> SELECT User, Host, CONCAT(User, '@', Host) AS Username FROM mysql.user;
我们还可以运行以下命令,该命令会检查 information_schema.USER_PRIVILEGES 表:
shell> mysql -B -N -e "SELECT DISTINCT CONCAT('SHOW GRANTS FOR ', GRANTEE, ';') FROM information_schema.USER_PRIVILEGES" > show-grants.sql
要获取给定用户的权限列表,可以使用 SHOW GRANTS 命令,例如在从 localhost 登录时获取 root 用户的权限:
SHOW GRANTS FOR 'root'@'localhost';
要获取对某些架构授予权限的用户列表,可以使用以下查询(请注意,架构删除后架构的权限会保持不变):
SELECT User FROM mysql.db WHERE Db ="[schema]";
日期:2020-09-17 00:11:09 来源:oir作者:oir