首页>>帮助中心>>vps云服务器mysql服务L用户管理

vps云服务器mysql服务L用户管理

2023/12/10 187次
用户权限相关操作


 mysql> CREATE USER root@'192.168.88.52' IDENTIFIED BY '123qqq...A'; #创建新用户

 mysql> SHOW GRANTS FOR root@'192.168.88.52'; #查看指定用户权限(Usage可登录)

 mysql> SHOW GRANTS; #查看当前用户权限

 mysql> GRANT SELECT ON *.* TO root@'192.168.88.52'; #用户授权

 mysql> SHOW GRANTS FOR root@'192.168.88.52'; #查看指定用户权限

 mysql> GRANT UPDATE,DELETE ON *.* TO root@'192.168.88.52'; #用户授权(叠加操作)

 mysql> SHOW GRANTS FOR root@'192.168.88.52'; #查看指定用户权限

 mysql> GRANT ALL ON *.* TO root@'192.168.88.52'; #ALL为MySQL的所有权限

 mysql> SHOW GRANTS FOR root@'192.168.88.52'; #查看指定用户权限

 mysql> REVOKE INSERT,DELETE,DROP ON *.* FROM root@'192.168.88.52'; #削减指定权限

 mysql> SHOW GRANTS FOR root@'192.168.88.52'; #查看指定用户权限

 mysql> REVOKE ALL ON *.* FROM root@'192.168.88.52'; #削减用户拥有的所有权限

 mysql> SHOW GRANTS FOR root@'192.168.88.52'; #ALL不包含Usage

 #目前版本中GRANT关键字支持创建不存在的用户,高版本中不支持

 mysql> GRANT SELECT ON *.* TO admin@'localhost' IDENTIFIED BY '123qqq...A';

 mysql> SELECT user,host FROM mysql.user;

    MySQL权限分布  

 /*

 相关表:

 mysql.user :用户信息及全局权限

 mysql.db :指定库下所有表权限

 mysql.tables_priv :指定库下指定表权限

 mysql.columns_priv :指定库下指定表指定字段权限

 */

 #查看相关表结构

 mysql> DESC mysql.user;

 mysql> DESC mysql.db;

 mysql> DESC mysql.tables_priv;

 mysql> DESC mysql.columns_priv;

 ##测试权限分布

 #测试用户信息

 mysql> CREATE USER admin@'localhost' IDENTIFIED BY '123qqq...A'; #创建新用户

 mysql> SELECT * FROM mysql.user WHERE user='admin'\G #查看用户信息

 #测试指定库下指定表指定字段权限

 mysql> GRANT UPDATE(shell) ON tarena.user TO admin@'localhost'; #用户授权

 mysql> SHOW GRANTS FOR admin@'localhost'; #查看用户权限

 mysql> SELECT * FROM mysql.columns_priv; #查看权限分布

 mysql> SELECT * FROM mysql.tables_priv; #查看权限分布

 #测试指定库下指定表权限

 mysql> GRANT SELECT ON tarena.user TO admin@'localhost'; #用户授权

 mysql> SHOW GRANTS FOR admin@'localhost'; #查看用户权限

 mysql> SELECT * FROM mysql.tables_priv; #查看权限分布

 #测试指定库下所有表权限

 mysql> GRANT DELETE ON tarena.* TO admin@'localhost'; #用户授权

 mysql> SHOW GRANTS FOR admin@'localhost'; #查看用户权限

 mysql> SELECT * FROM mysql.db\G #查看权限分布

 #测试所有库所有表(全局)权限

 mysql> GRANT INSERT ON *.* TO admin@'localhost'; #用户授权

 mysql> SHOW GRANTS FOR admin@'localhost'; #查看用户权限

 mysql> SELECT * FROM mysql.user WHERE user='admin'\G #查看权限分布