学了mysql用户权限我直接把管理员禁闭了

    技术2022-07-10  113

    一 前言

    本篇内容是关于MYSQL 数据库管理系统对数据库用户的权限相关的操作;学习本篇的基础是知识追寻者之前发布的MYSQL系列文章(公众号读者看专辑)

    本套教程 MYSQL介绍(1) MYSQL检索(2) MYSQL检索(3) MYSQL插入更新删除(4) MYSQL事物(5) MYSQL数据类型(6) MYSQL表结构操作(7) MYSQL视图(8) MYSQL储存过程(9) MYSQL游标与触发器(10) MYSQL用户权限管理(11) MYSQLl架构入门(12) MYSQL锁等待与死锁(13) MYSQLl操作json(14) MYSQL执行计划(15) MYSQL索引(16)

    公众号:知识追寻者

    知识追寻者(Inheriting the spirit of open source, Spreading technology knowledge;)

    二 用户操作

    有关用户账号的信息储存mysql的MYSQL数据库,故如果需要查看用户信息,则需要进入MYSQL库;

    2.2查看用户信息

    user表储存了所有的登陆账号;使用mysql库查询user表中的user;

    use mysql; select `user` from user;

    打印

    user ---- root mysql.session mysql.sys root

    2.3 创建用户

    CREATE USER 用户名 IDENTIFIED BY [PASSWORD] 密码

    示例:创建用户 zszxz ,并指定密码为 zszxz;

    create user zszxz IDENTIFIED by 'zszxz';

    2.4 重名名用户

    rename user 旧的用户名 to 新的用户名;

    示例重命名 用户 zszxz 为 lsc

    rename user zszxz to lsc;

    2.5 删除用户

    drop user 用户名

    示例:删除用户lsc

    drop user lsc;

    2.6 更改密码

    SET PASSWORD FOR 用户名 = PASSWORD('密码')

    示例: 为用户 zszxz 更改密码为 lsc

    SET PASSWORD FOR zszxz = PASSWORD('lsc')

    三 权限操作

    3.1 查看用户权限

    SHOW GRANTS FOR 用户名

    示例: 查看用户zszxz 拥有的权限

    SHOW GRANTS FOR zszxz

    打印

    Grant for zszxz@% ---------------- GRANT USAGE ON *.* TO 'zszxz'@'%'

    查询出一条权限,但 USAGE 表示 根本没有权限;

    3.2 授予权限

    GRANT 权限 ON 表名 TO 用户名 [IDENTIFIED BY [PASSWORD] 'password']

    常见的权限 all, create, drop, insert, update, delete,select;

    示例 给用户zszxz 分配 zszxz 库中的所有表的查询权限;

    grant select on zszxz.* to zszxz;

    再看下 zszxz变成 2 条

    Grant for zszxz@% ---------------- GRANT USAGE ON *.* TO 'zszxz'@'%' GRANT SELECT ON `zszxz`.* TO 'zszxz'@'%'

    3.3 撤销权限

    REVOKE 权限列表 ON 表名 FROM 用户名;

    示例:撤销 用户 zszxz 对 zszxz库里面所有表的查询操作;

    revoke select on zszxz.* from zszxz

    3.4 权限列表

    使用授权,撤销权限时可以参考如下权限列表;

    ALL --- 除GRANT OPTION外的所有权限 ALTER ---使用ALTER TABLE ALTER ROUTINE ---使用ALTER PROCEDURE和DROP PROCEDURE CREATE ---使用CREATE TABLE CREATE ROUTINE ---使用CREATE PROCEDURE CREATE TEMPORARY TABLES ---使用CREATE TEMPORARY TABLE CREATE USER ---使用CREATE USER、DROP USER、RENAME USER和REVOKE ALL PRIVILEGES CREATE VIEW ---使用CREATE VIEW DELETE ---使用DELETE DROP ---使用DROP TABLE EXECUTE ---使用CALL和存储过程 FILE ---使用SELECT INTO OUTFILE和LOAD DATA INFILE GRANT OPTION ---使用GRANT和REVOKE INDEX ---使用CREATE INDEX和DROP INDEX INSERT ---使用INSERT LOCK TABLES ---使用LOCK TABLES PROCESS ---使用SHOW FULL PROCESSLIST RELOAD ---使用FLUSH REPLICATION CLIENT ---服务器位置的访问 REPLICATION SLAVE ---由复制从属使用 SELECT ---使用SELECT SHOW DATABASES ---使用SHOW DATABASES SHOW VIEW ---使用SHOW CREATE VIEW SHUTDOWN ---使用mysqladmin shutdown(用来关闭MySQL) SUPER ---使用CHANGE MASTER、KILL、LOGS、PURGE、MASTER和SET GLOBAL。还允许mysqladmin调试登录 UPDATE ---使用UPDATE USAGE ---无访问权限
    Processed: 0.011, SQL: 9