zoukankan      html  css  js  c++  java
  • 【MySQL】:利用DCL管理用户和控制权限

    DCL(Data Control Language):数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户。

    一、管理用户

    1、创建用户

    -- 创建用户
    CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
    
    CREATE USER 'Summerday'@'localhost' IDENTIFIED BY '123456';
    

    ps:如果出现了[The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement]的错误,可以先执行FLUSH PRIVILEGES;语句。

    2、修改用户

    -- 修改密码
    SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');
    
    SET PASSWORD FOR 'Summerday'@'localhost' = PASSWORD('hyh123');
    

    3、查询用户

    -- 1. 切换到mysql数据库
    USE mysql;
    -- 2. 查询user表
    SELECT * FROM USER;
    

    %通配符匹配所有。

    4、删除用户

    -- 删除用户
    DROP USER '用户名'@'主机名';
    
    DROP USER 'Summerday'@'localhost';
    

    二、权限管理

    1、查询权限

    -- 查询权限
    SHOW GRANTS FOR '用户名'@'主机名';
    
    SHOW GRANTS FOR 'Summerday'@'localhost';
    

    2、授予权限

    -- 授予权限
    GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
    
    GRANT SELECT ON mydb2.account TO 'Summerday'@'localhost';
    
    -- 授予所有权限
    GRANT ALL ON *.* TO 'Summerday'@'localhost';
    

    3、撤销权限

    -- 撤销权限
    REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
    
    REVOKE SELECT ON mydb2.account TO 'Summerday'@'localhost';
    
    -- 撤销所有权限
    REVOKE ALL ON *.* FROM 'Summerday'@'localhost';
    
  • 相关阅读:
    hdu 4183(网络流)
    hdu 1565&hdu 1569(网络流--最小点权值覆盖)
    hdu 1532(最大流)
    HDU 2141 Can you find it?
    HDU 1096 A+B for Input-Output Practice (VIII)
    HDU 1095 A+B for Input-Output Practice (VII)
    HDU 1094 A+B for Input-Output Practice (VI)
    HDU 1093 A+B for Input-Output Practice (V)
    HDU 1092 A+B for Input-Output Practice (IV)
    HDU 1091 A+B for Input-Output Practice (III)
  • 原文地址:https://www.cnblogs.com/summerday152/p/12444857.html
Copyright © 2011-2022 走看看