亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 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视频网| 欧美激情一区二区三区在线播放| 亚洲精品久久久中文字| 欧美一级视频免费| 精品国产香蕉伊思人在线又爽又黄| 精品视频在线观看免费 | 香蕉视频一级| 高清一级做a爱过程不卡视频| 美国一区二区三区| 欧美一区二区三区性| 欧美大片a一级毛片视频| 国产成人啪精品| 日韩av成人| 九九热国产视频| 国产高清在线精品一区a| 青青久久国产成人免费网站| 韩国三级视频网站| 欧美一区二区三区性| 日日夜夜婷婷| 香蕉视频一级| 你懂的在线观看视频| 毛片的网站| 精品国产亚洲人成在线| 欧美激情一区二区三区中文字幕| 黄视频网站免费看| 99色吧| 日本免费看视频| 精品视频在线观看免费 | 欧美a级片视频| 国产视频久久久久| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 欧美1区| 欧美大片aaaa一级毛片| 成人免费观看男女羞羞视频| 国产91精品系列在线观看| 高清一级片| 久久精品欧美一区二区| 黄色免费三级| 免费国产在线观看| 色综合久久天天综线观看| 成人a大片高清在线观看| 精品国产一区二区三区久| 国产精品自拍在线| 欧美另类videosbestsex高清| 可以免费在线看黄的网站| 美女免费精品视频在线观看| 日韩专区一区| 国产91视频网| 精品久久久久久中文| 香蕉视频一级| 一级女性大黄生活片免费| 国产原创视频在线| 欧美国产日韩在线| 九九久久99| 国产精品自拍亚洲| 日本免费乱人伦在线观看 | 日日爽天天| 欧美电影免费看大全| 韩国三级视频网站| 国产成人精品综合| 99热精品在线| 日韩免费片| 精品视频在线看| 黄视频网站在线看| 欧美激情中文字幕一区二区| 日本特黄一级| 四虎影视久久久免费| 日韩在线观看网站| 麻豆午夜视频| 精品视频在线看 | 99色视频在线观看| 黄色免费三级| 日本在线不卡视频| 欧美国产日韩精品| 一级片免费在线观看视频| 日韩字幕在线| 国产不卡在线观看视频| 精品国产三级a| 日韩免费在线| 久久国产一区二区| 日本在线www| 精品在线观看国产| 日本在线www| 国产欧美精品| 成人免费高清视频| 亚洲精品影院久久久久久| 成人a大片在线观看| 九九久久99| 日韩在线观看网站| 尤物视频网站在线观看| 99热精品在线| 精品视频在线看| 亚洲精品中文字幕久久久久久| 精品视频免费观看| 成人高清免费| 日韩中文字幕在线观看视频| 国产欧美精品午夜在线播放| 一级片片| 亚洲女人国产香蕉久久精品| 麻豆系列 在线视频| 一级毛片看真人在线视频| 国产国产人免费视频成69堂| 日韩中文字幕一区二区不卡| 午夜久久网| 97视频免费在线观看| 国产91精品系列在线观看| 色综合久久天天综合观看| 成人免费网站视频ww| 美国一区二区三区| 国产精品自拍一区| 亚洲天堂一区二区三区四区| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 亚洲第一色在线| 久久成人综合网| 成人a大片在线观看| 国产精品1024在线永久免费 | 沈樵在线观看福利| 91麻豆爱豆果冻天美星空| 超级乱淫伦动漫| 欧美1卡一卡二卡三新区| 在线观看成人网| 99色吧| 国产伦精品一区二区三区无广告| 香蕉视频一级| 99热视热频这里只有精品| 欧美日本免费| 亚洲精品永久一区| 精品国产亚一区二区三区| 精品国产一区二区三区国产馆| 亚洲 欧美 成人日韩| 四虎久久影院| 青青青草视频在线观看| 国产成人精品综合久久久| 久久国产影院| 日本免费乱理伦片在线观看2018| 亚洲不卡一区二区三区在线| 日韩avdvd| 精品久久久久久影院免费| 黄视频网站免费看| 国产网站麻豆精品视频| 国产国产人免费视频成69堂| 亚洲wwwwww| 韩国三级香港三级日本三级| 亚洲第一视频在线播放| 999久久狠狠免费精品| 精品国产一区二区三区免费| 久久99中文字幕久久| 亚洲第一色在线| 一级毛片视频免费| 国产高清视频免费观看| 国产视频一区二区在线播放| 一本伊大人香蕉高清在线观看| 精品视频在线看 | 999久久久免费精品国产牛牛| 一a一级片| 超级乱淫伦动漫| 午夜在线亚洲男人午在线| 久久99这里只有精品国产| 亚洲女人国产香蕉久久精品| 日韩综合| 久久国产一久久高清| 国产成人精品影视| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 青青久久精品国产免费看| 高清一级做a爱过程不卡视频| 欧美一级视频免费| 欧美激情一区二区三区在线播放| 欧美另类videosbestsex视频 | 久久国产精品永久免费网站| 91麻豆精品国产自产在线观看一区 | 国产不卡福利| 国产伦久视频免费观看 视频| 青青久久精品国产免费看| 国产麻豆精品免费视频| 精品国产一区二区三区久久久蜜臀 | 黄色免费三级| 亚洲精品影院久久久久久| 精品久久久久久中文字幕一区| 日日爽天天| 亚洲 激情| 国产成a人片在线观看视频 | 欧美一级视频免费| 亚久久伊人精品青青草原2020| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 亚欧乱色一区二区三区| 你懂的日韩| 国产一区免费在线观看| 日本在线不卡免费视频一区| 欧美日本免费|