婷婷综合国产,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
    成人欧美一区二区三区| 欧美日韩国产综合一区二区 | 婷婷久久综合九色综合绿巨人| 51久久夜色精品国产麻豆| 日本va欧美va精品| 国产午夜精品久久| 亚洲小说春色综合另类电影| 久久色.com| 亚洲精品日日夜夜| 成人avav在线| 日韩二区三区在线观看| 国产精品福利在线播放| 91国偷自产一区二区使用方法| 亚洲精品高清视频在线观看| 国产成人综合视频| 国产一区二区导航在线播放| 国产欧美日韩精品在线| 972aa.com艺术欧美| 国产在线麻豆精品观看| 亚洲一区二区三区四区在线观看 | 国产精品视频一二| 国产欧美日韩在线视频| 激情综合色丁香一区二区| 欧美一级片在线观看| 中文字幕av一区二区三区高| 成人国产精品免费网站| 日韩美女在线视频 | 欧美视频在线观看一区| 不卡av在线免费观看| 国产精品一区二区在线观看不卡| 免费成人性网站| 中文字幕亚洲视频| 国产一区999| 在线日韩国产精品| 精品理论电影在线| 亚洲一区二区在线免费观看视频| 亚洲激情图片小说视频| 精品日韩成人av| 日韩美女天天操| 久久精品亚洲国产奇米99| 日韩美女一区二区三区四区| 精品国偷自产国产一区| 亚洲精品va在线观看| 久久精品视频一区二区三区| 精品国产在天天线2019| 国产91精品在线观看| 久久精品国产亚洲高清剧情介绍| 免费在线观看一区二区三区| 午夜精品aaa| 精品国产成人系列| 97久久精品人人做人人爽50路| 91香蕉视频在线| 国产在线精品免费| 日韩精品成人一区二区在线| 蜜臀av在线播放一区二区三区| 夜夜嗨av一区二区三区四季av| 久久精品在线免费观看| 国产三级精品视频| 亚洲乱码日产精品bd| 国产午夜精品美女毛片视频| 久久久久亚洲蜜桃| 亚洲人成网站在线| 欧美日韩国产高清一区| 精品日产卡一卡二卡麻豆| 国产精品国产馆在线真实露脸| 中文字幕一区二区三| 337p粉嫩大胆噜噜噜噜噜91av| 最新国产成人在线观看| 亚洲日本护士毛茸茸| 日韩美女视频在线| 日本欧美加勒比视频| 成人午夜免费av| 欧美一区二区三区在线观看 | 五月天丁香久久| 中文字幕在线一区免费| gogogo免费视频观看亚洲一| 国产精品久久网站| 日本不卡视频一二三区| 国产精品小仙女| 欧美专区日韩专区| 午夜一区二区三区视频| 色综合激情五月| 亚洲成人一区二区在线观看| 国产调教视频一区| 国产成人在线免费| thepron国产精品| aaa国产一区| 精品福利视频一区二区三区| 亚洲你懂的在线视频| 久久99精品国产.久久久久久| 久久福利资源站| 麻豆一区二区三区| 国产精品一二三四五| 欧美一区二区视频在线观看| 97精品久久久午夜一区二区三区| 欧美国产日本韩| 国产最新精品精品你懂的| 欧洲生活片亚洲生活在线观看| 欧美日韩亚洲综合在线| 欧美一级日韩不卡播放免费| 一区二区欧美国产| 91成人免费网站| 国产女同互慰高潮91漫画| 国产午夜精品一区二区三区嫩草 | 国产91清纯白嫩初高中在线观看| 欧美吞精做爰啪啪高潮| 久久久天堂av| 国产在线视频不卡二| 91国模大尺度私拍在线视频| 欧美精品乱人伦久久久久久| 亚洲美女免费视频| 成人国产精品免费观看视频| 久久午夜色播影院免费高清| 蜜臀va亚洲va欧美va天堂| 欧美日本韩国一区二区三区视频 | 色婷婷av一区二区三区软件| 欧美日韩五月天| 国产精品国产三级国产| 99re这里只有精品首页| 日韩毛片一二三区| 国产蜜臀97一区二区三区 | 亚洲天堂久久久久久久| 日韩中文字幕不卡| 亚洲少妇最新在线视频| 久久福利视频一区二区| 欧美成人性战久久| 日本亚洲电影天堂| 欧美一级久久久久久久大片| 一区二区在线免费| 奇米影视7777精品一区二区| 欧美主播一区二区三区美女| 亚洲成人一区二区在线观看| 欧美日韩一卡二卡| 亚洲一区二区三区四区在线观看| 成人黄色av电影| 日韩一区二区视频| 免费观看91视频大全| 欧美成人乱码一区二区三区| 国产精品免费久久| 日韩美女视频在线| 99久久er热在这里只有精品15| 久久色在线观看| 99re这里只有精品首页| 欧美理论电影在线| 99re在线视频这里只有精品| 国产精品美女一区二区在线观看| 石原莉奈在线亚洲三区| 欧美成人一区二区| 99精品黄色片免费大全| 日韩国产欧美在线观看| 日本一区二区三区四区| 亚洲图片一区二区| 天天综合色天天综合| 欧美日韩精品一区视频| 蜜臀av一区二区在线免费观看 | 国产成人午夜99999| 国产精品国产三级国产| av影院午夜一区| 精品免费视频一区二区| 麻豆精品在线播放| 日韩欧美不卡在线观看视频| 日韩伦理电影网| 在线成人免费观看| 日韩av一区二| 激情图区综合网| 秋霞午夜av一区二区三区| 日本在线不卡视频| 午夜精品一区二区三区三上悠亚| 日本欧美一区二区三区| 韩国女主播成人在线观看| av在线不卡网| 欧美色精品在线视频| 精品久久久三级丝袜| 日本一区二区电影| 亚洲高清久久久| 国产精品一品二品| 欧美私人免费视频| 久久免费美女视频| 亚洲视频中文字幕| 欧美日韩成人在线| 国产女主播一区| 日韩精品成人一区二区三区| 国产乱色国产精品免费视频| 欧美亚洲国产一区二区三区| 精品国产一区二区三区四区四| 亚洲人成网站色在线观看| 久久精品国产亚洲高清剧情介绍| av不卡在线播放| 精品国产在天天线2019| 暴力调教一区二区三区| 一区二区三区视频在线观看| 最新中文字幕一区二区三区| 免费在线观看精品| 色又黄又爽网站www久久| 精品电影一区二区三区| 亚洲高清一区二区三区| 成人激情黄色小说| www激情久久| 天堂蜜桃91精品| 色狠狠桃花综合|