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

MySQL 遠程連接授權全流程:防火牆、安全組、賬號權限三重保障

     編輯:MySQL 資料庫相關知識

三大前置條件

  1. 網絡通達:服務器防火牆/安全組/雲廠商安全組**放行 3306 (或自定義端口)**。
  2. 安全軟體白名單:服務器安裝安全狗/雲鎖/ClamAV 等,**將客戶端 IP 加入白名單**,防誤攔截。
  3. MySQL 綁定地址:my.cnf bind-address = 0.0.0.0 或具體內網 IP,**不可為 127.0.0.1**。

賬號授權標準流程

1. 登錄 MySQL


mysql -u root -p"YourRootPassword"

2. 創建遠程賬號並授權


-- 授權指定 IP、指定庫、指定權限 (最小權限原則)
GRANT SELECT, LOCK TABLES ON `target_db`.* TO 'backup_user'@'115.28.36.60' IDENTIFIED BY 'StrongPassword123!';

-- 通配符 IP (慎用,內網可用 %)
GRANT SELECT ON `target_db`.* TO 'backup_user'@'10.0.%' IDENTIFIED BY 'StrongPassword123!';

-- 全庫全表管理權限 (極度慎用)
GRANT ALL PRIVILEGES ON *.* TO 'admin_user'@'10.0.0.5' IDENTIFIED BY 'StrongPassword123!' WITH GRANT OPTION;

3. 刷新權限生效


FLUSH PRIVILEGES;

4. 驗證連接


# 客戶端測試
mysql -h server_ip -u backup_user -p"StrongPassword123!" -e "SELECT 1;"

# 檢查用戶表
SELECT Host, User, authentication_string FROM mysql.user WHERE User='backup_user';

權限模型深度解析

授權對象語法說明
全庫全表*.*超級管理員
指定庫全表db_name.*業務賬號標準
指定庫指定表db_name.tbl_name最小權限
指定列GRANT SELECT (col1,col2) ON db.tbl TO ...敏感字段隔離

常用權限組合

  • 只讀備份賬號:SELECT, LOCK TABLES, SHOW VIEW, PROCESS, REPLICATION CLIENT (配合 mysqldump/xtrabackup)。
  • 開發讀寫賬號:SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER (無 GRANT OPTION)。
  • 只讀分析賬號:SELECT (嚴禁 LOCK TABLES 影響主庫)。
  • 複製賬號:REPLICATION SLAVE, REPLICATION CLIENT。

安全加固清單

  1. 強密碼策略:validate_password 插件強制長度/複雜度/過期。
  2. 禁用 root 遠程:DELETE FROM mysql.user WHERE User='root' AND Host!='localhost'; FLUSH PRIVILEGES;
  3. 定期審計賬號:SELECT Host, User FROM mysql.user; 清理僵屍/過期賬號。
  4. SSL 加密傳輸:REQUIRE SSL 強制加密連接,防中間人竊聽。
  5. 連接數限制:GRANT ... WITH MAX_CONNECTIONS_PER_HOUR 1000 防失控佔用。

排查連不上的標準動作

  1. telnet server_ip 3306 / nc -zv server_ip 3306 測端口通達。
  2. 服務器 netstat -antp | grep 3306 確認監聽地址非 127.0.0.1。
  3. 客戶端 mysql -h ... -v 看具體錯誤碼 (1045=認證失敗, 2003=網絡不通, 2013=握手斷開)。
  4. 檢查 skip-name-resolve 是否導致主機名賬號失效 (需改 IP/%)。

總結

MySQL 遠程授權 = **網絡放行 + 綁定 0.0.0.0 + 最小權限 GRANT + FLUSH PRIVILEGES + SSL/強密碼/審計**。備份賬號僅需 SELECT, LOCK TABLES,嚴禁 *.*、%、弱密碼、明文傳輸。將授權流程標準化為運維 SOP,納入變更管理,是資料庫安全基石。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved