最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL Workbench中的權限設置不生效

 更新時間:2026年04月15日 09:23:18   作者:fundoit  
MySQL賬號即使只被授予特定數(shù)據庫權限,仍可能因擁有全局權限而查看所有數(shù)據庫,本文分析該現(xiàn)象成因,提供排查方法,并給出三種解決方案,感興趣的可以了解一下

???現(xiàn)象:

這個test賬號我只給了兩個數(shù)據庫權限,為什么它連接還是能看到其他數(shù)據庫。下圖是這個賬號的設置。

test 賬號能看到其他數(shù)據庫,很可能是因為它擁有了某個“全局級別”的權限,比如 SHOW DATABASES。只要用戶有任意一個全局權限,MySQL 就會允許他查看服務器上所有數(shù)據庫的名字,這可能會造成一些安全風險。

?? 為什么一個全局權限會導致看到所有數(shù)據庫?

在 MySQL 中,權限的授予范圍是分層級的。其中,“全局權限”(*.*)是所有權限里最高的一級。根據 MySQL 的官方設計,只要用戶擁有了任何一個全局權限,系統(tǒng)在執(zhí)行 SHOW DATABASES 命令時,就會向其展示服務器上所有數(shù)據庫的名稱。

???‍♂? 排查問題:test 賬號擁有哪些權限?

按照下面的步驟來檢查 test 賬號的具體權限,應該就能找到是哪個全局權限導致了問題。

  1. 登錄數(shù)據庫:用 root 或其他有管理權限的賬號登錄 MySQL。

    mysql -u root -p
  2. 查看用戶權限:在 MySQL 命令行中,執(zhí)行以下 SQL 命令:

    SHOW GRANTS FOR 'test'@'%';

    請注意:賬號由用戶名 (test) 和主機名 (%) 共同組成。

  3. 分析返回結果:重點檢查輸出中是否包含 GRANT ... ON \*.\* TO ... 這樣的語句。這類語句就代表了全局權限。

?? 解決方案:如何限制用戶只能看到授權的數(shù)據庫?

想解決這個問題,核心思路就是移除用戶多余的全局權限。

1. 方案一:移除SHOW DATABASES權限(推薦)

如果你只希望用戶看不到其他數(shù)據庫,但無需回收他的其他權限,可以只撤銷 SHOW DATABASES 權限。在命令行中執(zhí)行:

REVOKE SHOW DATABASES ON *.* FROM 'test'@'%';

2. 方案二:檢查并回收不必要的全局權限

你也可以選擇移除所有不必要的全局權限,僅保留數(shù)據庫級別的授權。操作前請先查詢并評估,再執(zhí)行撤銷:

-- 1. 查詢當前權限以評估
SHOW GRANTS FOR 'test'@'%';
-- 2. 移除不必要的全局權限,例如:
REVOKE SELECT ON *.* FROM 'test'@'%';

3. 驗證結果

執(zhí)行權限回收后,可以讓 test 重新登錄并運行 SHOW DATABASES; 命令,檢查數(shù)據庫列表是否已符合預期。

?? 核心總結

理解權限層級是關鍵,MySQL 的這種設計是為了兼顧安全性與可用性:

  • 安全性優(yōu)先:默認行為是“最小權限原則”,即用戶只能看到自己有權限訪問的數(shù)據。這有效防止了低權限用戶通過 SHOW DATABASES 來探測服務器上的所有數(shù)據庫名稱,降低了信息泄露的風險。
  • 全局權限的雙刃劍:作為最高層級的權限,全局權限能極大地方便管理員操作,但也會產生“看到所有數(shù)據庫”的副作用。因此,在給普通業(yè)務賬號授予任何全局權限時,都需格外謹慎。

到此這篇關于MySQL Workbench中的權限設置不生效的文章就介紹到這了,更多相關MySQL Workbench權限不生效內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

平南县| 耒阳市| 栾川县| 武隆县| 蕲春县| 眉山市| 巴彦淖尔市| 黑山县| 东阳市| 江安县| 且末县| 灵宝市| 昌都县| 高陵县| 安溪县| 绩溪县| 隆昌县| 宜宾市| 疏附县| 庆云县| 神木县| 阿克苏市| 叶城县| 石屏县| 鄯善县| 湖州市| 剑河县| 正阳县| 巨野县| 松滋市| 平舆县| 光泽县| 株洲县| 阳原县| 平舆县| 海宁市| 广宁县| 楚雄市| 津市市| 丹阳市| 连江县|