1. 程式人生 > >數據庫常用授權和授權回收參數配置

數據庫常用授權和授權回收參數配置

mariadb

標題索引


  • 官方幫助

  • 常用案例


官方幫助

在使用數據庫時必不可少的即是查看help幫助,通過help幫助再次尋找常用命令及參數,如下為help grant信息:

MariaDB [(none)]> help grant;
Name: 'GRANT'
Description:
Syntax:
GRANT
    priv_type [(column_list)]
      [, priv_type [(column_list)]] ...
    ON [object_type] priv_level
    TO user_specification [, user_specification] ...
    [REQUIRE {NONE | ssl_option [[AND] ssl_option] ...}]
    [WITH with_option ...]

GRANT PROXY ON user_specification
    TO user_specification [, user_specification] ...
    [WITH GRANT OPTION]

object_type:
    TABLE
  | FUNCTION
  | PROCEDURE

priv_level:
    *
  | *.*
  | db_name.*
  | db_name.tbl_name
  | tbl_name
  | db_name.routine_name
user_specification:
    user
    [
        IDENTIFIED BY [PASSWORD] 'password'
      | IDENTIFIED WITH auth_plugin [AS 'auth_string']
    ]
Normally, a database administrator first uses CREATE USER to create an
account, then GRANT to define its privileges and characteristics. For
example:

CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass';
GRANT ALL ON db1.* TO 'jeffrey'@'localhost';
GRANT SELECT ON db2.invoice TO 'jeffrey'@'localhost';
GRANT USAGE ON *.* TO 'jeffrey'@'localhost' WITH MAX_QUERIES_PER_HOUR 90;

常用配置

1.授權單位普通DBA或運維人員增刪改查命令

MariaDB [(none)]> create table performance( id int, server_name varchar(20), Adress_City varchar(30) );
MariaDB [(none)]> grant select,update,delete,insert on cluster.performance to root@'172.18.0.%' identified by 'jncsy';
Query OK, 0 rows affected (0.00 sec)
MariaDB  [(none)]> flush privileges;

2.授權某個用戶某張表的某幾列查詢命令

MariaDB [(none)]> grant select(id,server_name) on cluster.performance to root@'172.18.0.%' identified by 'jncsy';
Query OK, 0 rows affected (0.00 sec)
MariaDB  [(none)]> flush privileges;

3.撤銷某用戶的授權權限

MariaDB [(none)]> show grants for root@'172.18.0.%';
+--------------------------------------------------------------------------------------------------------------+
| Grants for [email protected].%                                                                                   |
+--------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'root'@'172.18.0.%' IDENTIFIED BY PASSWORD '*429B3FB345D35EC8C8B54230AD060C07E846494A' |
| GRANT SELECT, INSERT, UPDATE, DELETE ON `cluster`.`performance` TO 'root'@'172.18.0.%'                       |
+--------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
MariaDB [(none)]> revoke select on cluster.performance from root@'172.18.0.%';
Query OK, 0 rows affected (0.00 sec)


數據庫常用授權和授權回收參數配置