mysql

查看用户:

    1. mysql 数据库下的 user 表中存储着用户的基本权限,可以使用 SELECT 语句来查看。SELECT 语句的代码如下:
      SELECT * FROM mysql.user;

      要执行该语句,必须拥有对 user 表的查询权限。注意:新创建的用户只有登录 MySQL 服务器的权限,没有任何其它权限,不能查询 user 表

    2. SHOW GRANTS FOR 语句查看权限。其语法格式如下:
      SHOW GRANTS FOR 'username'@'hostname'; 

创建用户:

    1. 使用 CREATE USER 语句创建用户:
      mysql> CREATE USER 'test1'@'localhost' IDENTIFIED BY 'test1';
      Query OK, 1 rows affected (0.06 sec)
    2. 使用 INSERT 语句创建用户的代码如下:
      mysql> INSERT INTO mysql.user(Host, User, authentication_string, ssl_cipher, x509_issuer, x509_subject) VALUES ('localhost', 'test2', PASSWORD('test2'), '', '', '');
      Query OK, 1 row affected, 1 warning (0.02 sec)

      结果显示,新建用户成功。但是这时如果通过该账户登录 MySQL 服务器,不会登录成功,因为 test2 用户还没有生效。注意:user 表中的 User 和 Host 字段区分大小写,创建用户时要指定正确的用户名称或主机名。

      1. 可以使用 FLUSH 命令让用户生效,命令如下:

        FLUSH PRIVILEGES;
    3. 使用 GRANT 语句创建用户:
      1. 语法:
        GRANT priv_type ON database.table TO user [IDENTIFIED BY [PASSWORD] 'password']
      2. 示例:
        mysql> GRANT SELECT ON*.* TO 'test3'@localhost IDENTIFIED BY 'test3';
        Query OK, 0 rows affected, 1 warning (0.01 sec)

        其中,“*.*” 表示所有数据库下的所有表。结果显示创建用户成功,且 test3 用户对所有表都有查询(SELECT)权限。

修改用户:

    1. 语法格式如下:
      RENAME USER <旧用户> TO <新用户>

      其中:

      • <旧用户>:系统中已经存在的 MySQL 用户账号。
      • <新用户>:新的 MySQL 用户账号。
    2. 示例:
      mysql> RENAME USER 'test1'@'localhost'
          -> TO 'testUser1'@'localhost';
      Query OK, 0 rows affected (0.03 sec)
    3. 注意:
      1. RENAME USER 语句用于对原有的 MySQL 用户进行重命名。
      2. 若系统中旧账户不存在或者新账户已存在,该语句执行时会出现错误。
      3. 使用 RENAME USER 语句,必须拥有 mysql 数据库的 UPDATE 权限全局 CREATE USER 权限

删除用户:

    1. 语法:
      DROP USER <用户1> [ , <用户2> ]…
    2. 示例:
      mysql> DROP USER 'test1'@'localhost';
      Query OK, 0 rows affected (0.00 sec)
原文地址:https://www.cnblogs.com/gengyufei/p/14264781.html