婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL 角色(role)功能介紹

MySQL 角色(role)功能介紹

熱門標簽:催天下外呼系統 大豐地圖標注app 400電話辦理服務價格最實惠 呂梁外呼系統 武漢電銷機器人電話 南太平洋地圖標注 北京金倫外呼系統 html地圖標注并導航 400電話變更申請

前言:

上篇文章,我們介紹了 MySQL 權限管理相關知識。當數據庫實例中存在大量的庫或用戶時,權限管理將會變得越來越繁瑣,可能要頻繁進行權限變更。MySQL 8.0 新增了 role 功能,使得權限管理更加方便,本篇文章我們來看下 8.0 下的 role 功能。

  1. role 簡介

role 角色功能對于 Oracle 數據庫來說不算是什么特殊,在 Oracle 中經常被用到。MySQL 8.0 版本終于新增了 role 功能,為數據庫用戶權限管理提供了一種新思路。

role 可以看做一個權限的集合,這個集合有一個統一的名字 role 名。可以給多個數據庫用戶授予同個 role 的權限,權限變更可直接通過修改 role 來實現,不需要每個用戶一個一個的去變更,方便運維和管理。role 可以創建、刪除、修改并作用到它管理的用戶上。

下面我們具體來體驗下 role 角色功能:

# 創建role
mysql> create role 'dev_role';
Query OK, 0 rows affected (0.15 sec)

# 給role授予權限
mysql> grant select on db1.* to 'dev_role'@'%';
Query OK, 0 rows affected (0.12 sec)

# 查看role的權限
mysql> show grants for 'dev_role'@'%';
+-------------------------------------------+
| Grants for dev_role@%                     |
+-------------------------------------------+
| GRANT USAGE ON *.* TO `dev_role`@`%`      |
| GRANT SELECT ON `db1`.* TO `dev_role`@`%` |
+-------------------------------------------+

# 創建用戶 并賦予角色權限
mysql> create user 'dev1'@'%' identified by '123456';
Query OK, 0 rows affected (0.68 sec)

mysql> grant 'dev_role' to 'dev1'@'%';
Query OK, 0 rows affected (0.38 sec)

# 查看用戶權限
mysql> show grants for 'dev1'@'%';
+------------------------------------+
| Grants for dev1@%                  |
+------------------------------------+
| GRANT USAGE ON *.* TO `dev1`@`%`   |
| GRANT `dev_role`@`%` TO `dev1`@`%` |
+------------------------------------+
2 rows in set (0.63 sec)

# 使用dev1用戶登錄
root@localhost ~]# mysql -udev1 -p123456

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.34 sec)

mysql> select CURRENT_ROLE();
+----------------+
| CURRENT_ROLE() |
+----------------+
| NONE           |
+----------------+
1 row in set (0.59 sec)

什么情況?貌似和我們想象不同,賦予用戶某個角色權限后,該用戶并沒有獲得相應權限。

出現上述情況的原因是,在用戶會話中,授予該用戶的角色處于非活動狀態。只有授予的角色在會話中處于活動狀態時,該用戶才擁有此角色的權限,要確定當前會話中哪些角色處于活動狀態,可以使用 CURRENT_ROLE() 函數。

# 使用 set default role 命令激活角色
mysql> SET DEFAULT ROLE ALL TO dev1;
Query OK, 0 rows affected (0.77 sec)

# 重新登錄 發現權限正常
root@localhost ~]# mysql -udev1 -p123456

mysql> select CURRENT_ROLE();
+----------------+
| CURRENT_ROLE() |
+----------------+
| `dev_role`@`%` |
+----------------+
1 row in set (0.57 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| db1                |
| information_schema |
+--------------------+
2 rows in set (1.05 sec)

除了使用 set default role 命令激活角色外,還可以修改系統變量 activate_all_roles_on_login ,該變量決定是否自動激活 role ,默認為 OFF 即不自動激活,建議將該變量改為 ON ,這樣以后賦予角色給新用戶后就不需要再手動激活了。

# 查看 activate_all_roles_on_login 變量
mysql> show variables like 'activate_all_roles_on_login';
+-----------------------------+-------+
| Variable_name               | Value |
+-----------------------------+-------+
| activate_all_roles_on_login | OFF   |
+-----------------------------+-------+
1 row in set (1.53 sec)

# 啟用該變量 先動態啟用 之后可以將此參數加入my.cnf配置文件中
mysql> set global activate_all_roles_on_login = on;
Query OK, 0 rows affected (0.50 sec)

# 之后角色就會自動激活
mysql> create user 'dev2'@'%' identified by '123456';
Query OK, 0 rows affected (0.68 sec)

mysql> grant 'dev_role' to 'dev2'@'%';
Query OK, 0 rows affected (0.38 sec)

root@localhost ~]# mysql -udev2 -p123456

mysql> select CURRENT_ROLE();
+----------------+
| CURRENT_ROLE() |
+----------------+
| `dev_role`@`%` |
+----------------+
1 row in set (0.57 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| db1                |
| information_schema |
+--------------------+
2 rows in set (1.05 sec)

  2. role 相關操作

上面我們介紹了創建角色及給用戶授予角色權限,關于 role 相關操作還有很多,我們接著來看下。

# 變更角色權限
mysql> grant select on db2.* to 'dev_role'@'%';
Query OK, 0 rows affected (0.33 sec)

# 擁有該角色的用戶 重新登錄后權限也會對應變化
root@localhost ~]# mysql -udev1 -p123456

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| db1                |
| db2                |
| information_schema |
+--------------------+
3 rows in set (2.01 sec)

# 回收角色權限
mysql> revoke SELECT ON db2.* from 'dev_role'@'%';
Query OK, 0 rows affected (0.31 sec)

# 撤銷用戶的角色
mysql> revoke 'dev_role'@'%' from 'dev1'@'%';
Query OK, 0 rows affected (0.72 sec)

mysql> show grants for 'dev1'@'%';
+----------------------------------+
| Grants for dev1@%                |
+----------------------------------+
| GRANT USAGE ON *.* TO `dev1`@`%` |
+----------------------------------+
1 row in set (1.06 sec)

# 刪除角色 (刪除角色后 對應的用戶也會失去該角色的權限)
mysql> drop role dev_role;
Query OK, 0 rows affected (0.89 sec)

我們還可以通過 mandatory_roles 變量來配置強制性角色。使用強制性角色,服務器會為全部的用戶戶默認賦予該角色,而不需要顯示執行授予角色。可以使用 my.cnf 文件或者使用 SET PERSIST 進行配置,例如:

# my.cnf 配置
[mysqld]
mandatory_roles='dev_role'

# set 更改變量
SET PERSIST mandatory_roles = 'dev_role';


需要注意的是,配置在 mandatory_roles 中的角色不能撤銷其權限,也不能刪除。

總結:

關于 role 角色相關知識,簡單總結幾點如下:

  • role 是一個權限的集合,可以被賦予不同權限。
  • 開啟 activate_all_roles_on_login 變量,才可以自動激活角色。
  • 一個用戶可以擁有多個角色,一個角色也可以授予多個用戶。
  • 角色權限變化會應用到對應用戶。
  • 刪除角色,則擁有此角色的用戶也會喪失此角色的權限。
  • 可設置強制性角色,使得所有用戶都擁有此角色的權限。
  • 角色管理和用戶管理相似,只是角色不能用于登錄數據庫。

以上就是MySQL 角色(role)功能介紹的詳細內容,更多關于MySQL 角色(role)功能的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • MySQL 8.0用戶和角色管理原理與用法詳解
  • 詳解MySQL8的新特性ROLE

標簽:龍巖 無錫 自貢 迪慶 南充 西寧 麗水 徐州

巨人網絡通訊聲明:本文標題《MySQL 角色(role)功能介紹》,本文關鍵詞  MySQL,角色,role,功能,介紹,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL 角色(role)功能介紹》相關的同類信息!
  • 本頁收集關于MySQL 角色(role)功能介紹的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品欧美一区二区三区| 亚洲成人在线观看视频| 91在线小视频| 99天天综合性| 91视频免费看| 欧美日韩三级视频| 欧美一区国产二区| 欧美va亚洲va香蕉在线| 久久精品亚洲乱码伦伦中文| 在线观看三级视频欧美| 成人h动漫精品一区二| 国产一区二区三区免费看| 九九热在线视频观看这里只有精品| 麻豆久久久久久久| 国产精品18久久久久久久久| 不卡区在线中文字幕| 777a∨成人精品桃花网| 精品欧美一区二区久久| 亚洲人成7777| 亚洲色图欧洲色图婷婷| 中文字幕国产精品一区二区| 亚洲欧洲日韩在线| 五月婷婷激情综合网| 狠狠色狠狠色综合系列| 91色porny蝌蚪| 2020国产精品久久精品美国| 亚洲欧洲韩国日本视频| 五月综合激情日本mⅴ| 菠萝蜜视频在线观看一区| 欧美一区二区女人| 亚洲永久精品国产| 成人av第一页| 国产女同性恋一区二区| 一区二区三区久久| 91麻豆免费看| 亚洲视频免费观看| 国产东北露脸精品视频| 7777精品伊人久久久大香线蕉 | 亚洲国产成人av网| 成人avav在线| 日本一区二区三区免费乱视频| 蜜臀久久99精品久久久久宅男| 欧美四级电影网| 亚洲一区精品在线| 欧美亚洲自拍偷拍| 天天综合色天天综合色h| 欧美区在线观看| 久久99精品一区二区三区| 欧美一区二区三区四区五区| 天涯成人国产亚洲精品一区av| 91精品国产综合久久小美女| 亚洲五码中文字幕| 欧美本精品男人aⅴ天堂| 日本强好片久久久久久aaa| 精品精品国产高清a毛片牛牛| 麻豆国产一区二区| 国产精品美女久久久久久| 一本久道中文字幕精品亚洲嫩 | 成人sese在线| 日本不卡视频一二三区| 久久久久综合网| jizzjizzjizz欧美| 亚洲自拍偷拍综合| 日本一区二区三区免费乱视频| 91麻豆自制传媒国产之光| 国产乱子伦视频一区二区三区 | 欧美一激情一区二区三区| 国产99一区视频免费| 亚洲男同1069视频| 日韩欧美一区二区视频| 91免费视频网| 成人精品高清在线| 国产做a爰片久久毛片 | 欧美美女黄视频| av电影天堂一区二区在线观看| 免费成人性网站| 婷婷久久综合九色综合绿巨人 | 在线观看亚洲a| 99国产精品久久久久| 国产成人精品免费一区二区| 美女精品一区二区| 免费看欧美女人艹b| 亚洲成人1区2区| 樱桃视频在线观看一区| 亚洲欧洲www| 亚洲欧美国产77777| 玉米视频成人免费看| 亚洲猫色日本管| 亚洲美女淫视频| 亚洲成人av一区| 青青草97国产精品免费观看| 麻豆精品视频在线| 精品一区二区三区免费| 久久99国产精品尤物| 国产成人免费高清| 国产99久久久国产精品潘金网站| 成人av资源下载| 欧美专区在线观看一区| 欧美精品色综合| 日韩一二三四区| 国产精品卡一卡二卡三| 中文字幕在线不卡一区二区三区| 亚洲欧美综合另类在线卡通| 亚洲黄色免费网站| 美女一区二区三区在线观看| 粉嫩av亚洲一区二区图片| 欧美精品久久一区| 亚洲日穴在线视频| 激情综合一区二区三区| 91久久精品一区二区二区| 日韩欧美区一区二| 亚洲一区电影777| 激情小说欧美图片| 欧美性xxxxx极品少妇| 国产精品污网站| 韩国av一区二区三区四区| 欧美精品一二三区| 一区二区在线免费| 狠狠色丁香久久婷婷综| 欧美日韩国产成人在线免费| 亚洲欧美激情一区二区| 狠狠色丁香婷婷综合久久片| 欧美私模裸体表演在线观看| 中文在线免费一区三区高中清不卡| 亚洲国产乱码最新视频| 99久久婷婷国产| 26uuu欧美| 国产精品综合网| 欧美精品一区二区三区在线播放| 一区av在线播放| 欧美视频在线观看一区二区| 亚洲免费观看视频| 欧洲一区在线电影| 三级欧美在线一区| 欧美理论片在线| 另类综合日韩欧美亚洲| 这里只有精品99re| 裸体健美xxxx欧美裸体表演| 久久综合国产精品| 不卡一区二区在线| 成人免费在线视频| 欧美精品一卡两卡| 国产a区久久久| 成人欧美一区二区三区视频网页| 欧美色老头old∨ideo| 一区二区三区精品在线| 欧美久久久久久蜜桃| 国产成人av影院| 亚洲欧美影音先锋| 精品免费99久久| 成人激情小说网站| 欧美96一区二区免费视频| 久久婷婷久久一区二区三区| 成人美女视频在线看| 精品一区二区三区香蕉蜜桃| 中文字幕视频一区| 久久久久久一二三区| 欧美日韩视频在线第一区| 国产精品综合视频| 亚洲大片在线观看| 日本一区二区动态图| 欧美一级欧美三级在线观看| 99re6这里只有精品视频在线观看| 久久国产精品色婷婷| 亚洲一区自拍偷拍| 一区二区三区在线观看国产| 国产欧美视频一区二区| 久久亚洲二区三区| 欧美成人艳星乳罩| 日韩欧美电影一二三| 日韩欧美国产1| 欧美一级二级三级乱码| 欧美一区二区三区在线观看| 日韩欧美一级片| 久久毛片高清国产| 国产精品欧美一区喷水| 国产色产综合产在线视频| 中国色在线观看另类| 国产精品家庭影院| 又紧又大又爽精品一区二区| 亚洲综合小说图片| 亚洲福利一区二区| 美女一区二区久久| 国产·精品毛片| 99久久久国产精品| 91麻豆精品国产91久久久久 | 国产精品嫩草影院com| 国产精品久久久久aaaa| 亚洲成人777| 精品一区二区成人精品| 粉嫩aⅴ一区二区三区四区五区| 99久久99久久免费精品蜜臀| 在线精品视频小说1| 欧美这里有精品| 久久精品亚洲国产奇米99| 亚洲一区二区在线观看视频| 麻豆精品在线观看| 欧美中文字幕一区| 久久精品亚洲一区二区三区浴池 | 日韩精品中文字幕一区|