首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 遠程訪問權限精簡配置速查表

     編輯:MySQL 資料庫相關知識

MySQL GRANT 權限分級配置:從單庫到全庫、從單 IP 到全網

權限模板速查

需求SQL 範例說明
訪問單庫 testGRANT ALL PRIVILEGES ON test.* TO 'root'@'%';root、空密碼、全網可連
訪問所有庫GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';最高權限,生產禁用
指定用戶 liuhuiGRANT ALL PRIVILEGES ON *.* TO 'liuhui'@'%';空密碼
指定用戶 + 密碼GRANT ALL PRIVILEGES ON *.* TO 'liuhui'@'%' IDENTIFIED BY 'liuhui';密碼 liuhui
限定來源 IPGRANT ALL PRIVILEGES ON *.* TO 'liuhui'@'10.2.1.11';僅 10.2.1.11 可連
單表權限GRANT SELECT, INSERT ON test.orders TO 'app'@'%';精確到表
欄位級權限GRANT SELECT (id, name) ON test.users TO 'app'@'%';精確到欄位

權限層級說明

  • *.*:全庫全表(超級管理員)
  • db.*:單庫所有表
  • db.table:單表
  • db.table(col1, col2):欄位級
  • PROCEDURE/FUNCTION:存儲過程/函數執行權限

主機匹配規則

  • %:任意主機(含 localhost)
  • localhost:本機 Unix socket 連接
  • 192.168.1.%:IP 段通配
  • host.example.com:主機名(需 DNS 解析)

生效與撤銷

FLUSH PRIVILEGES;  -- 修改 mysql.user 表後需刷新(GRANT 自動生效)

-- 撤銷
REVOKE ALL PRIVILEGES ON *.* FROM 'liuhui'@'%';

MySQL 8.0+ 新語法


CREATE USER 'liuhui'@'%' IDENTIFIED BY 'liuhui';
GRANT ALL PRIVILEGES ON *.* TO 'liuhui'@'%';
-- 不再支援 GRANT ... IDENTIFIED BY
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved