要查看MySQL数据库用户的权限,可以通过以下几种方法:
SHOW GRANTS
命令SHOW GRANTS
命令可以显示指定用户的权限。你需要以具有足够权限的用户登录MySQL,然后执行以下命令:
SHOW GRANTS FOR 'username'@'host';
例如,查看用户 john
在 localhost
上的权限:
SHOW GRANTS FOR 'john'@'localhost';
information_schema
数据库你可以查询 information_schema
数据库中的 SCHEMA_PRIVILEGES
和 TABLE_PRIVILEGES
表来获取用户的权限信息。
SELECT * FROM information_schema.SCHEMA_PRIVILEGES WHERE GRANTEE = "'username'@'host'";
SELECT * FROM information_schema.TABLE_PRIVILEGES WHERE GRANTEE = "'username'@'host'";
例如,查看用户 john
在 localhost
上的权限:
SELECT * FROM information_schema.SCHEMA_PRIVILEGES WHERE GRANTEE = "'john'@'localhost'";
SELECT * FROM information_schema.TABLE_PRIVILEGES WHERE GRANTEE = "'john'@'localhost'";
mysql.user
和 mysql.db
表你也可以直接查询MySQL系统表 mysql.user
和 mysql.db
来获取用户的权限信息。
SELECT * FROM mysql.user WHERE User = 'username' AND Host = 'host';
SELECT * FROM mysql.db WHERE User = 'username' AND Host = 'host';
例如,查看用户 john
在 localhost
上的权限:
SELECT * FROM mysql.user WHERE User = 'john' AND Host = 'localhost';
SELECT * FROM mysql.db WHERE User = 'john' AND Host = 'localhost';
SHOW GRANTS
命令的输出可能对初学者来说不太直观。通过这些方法,你可以有效地查看和管理MySQL数据库用户的权限。
领取专属 10元无门槛券
手把手带您无忧上云