全部产品

GRANT

更新时间:2019-07-02 21:25:32

GRANT用于为用户授权。

语法

  1. GRANT
  2. priv_type [(column_list)]
  3. [, priv_type [(column_list)]] ...
  4. ON priv_level
  5. TO user [auth_option]
  6. [WITH {GRANT OPTION}]

参数

  • priv_type:权限类型,详情请参见权限模型

  • column_list:可选参数,当priv_typeSELECT时,可以填写表中的列名,针对具体列授予SELECT授权。

  • priv_level:被授权对象层级。

    • *.*:整个集群级别的权限。

    • db_name.*:数据库级别的权限。

    • db_name.table_name或者table_name:表级别的权限。

注意事项

通过GRANT授权用户时,您需要拥有GRANT OPTION权限。

示例

  • 为账号account2授予集群级别的all权限。

    1. GRANT all ON *.* TO 'account2';
  • 为账号account3授予数据库级别的all权限。

    1. GRANT all ON adb_demo.* TO 'account3';
  • 可以通过GRANT创建并授权账号。

    例如,创建全局DML帐号。

    1. GRANT insert,select,update,delete on *.* to 'test'@'%' identified by 'Testpassword1';

    创建数据库级别DML帐号。

    1. GRANT insert,select,update,delete on adb_demo.* to 'test123' identified by 'Testpassword123';
  • 创建账号并授予列级别的SELECT权限。

    1. GRANT select (customer_id, sex) ON customer TO 'test321' identified by 'Testpassword321';