首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 局域網訪問與權限用戶管理實戰配置

     編輯:MySQL 綜合教學

MySQL 局域網訪問與權限用戶管理實戰配置

本文針對 MySQL 5.6/5.7 在 Windows/Linux 環境下的局域網訪問配置、用戶建立、密碼修改、權限授予提供標準化操作指令集,並說明版本差異點,適合快速部署與權限審計場景。

一、核心配置指令集

1. 進入系統庫檢查用戶

USE mysql;
SELECT Host, User, authentication_string FROM user;  -- 5.7+
SELECT Host, User, Password FROM user;                -- 5.6

2. 開放局域網訪問 (修改 root Host)

UPDATE user SET Host = '%' WHERE User = 'root';
FLUSH PRIVILEGES;

安全警示:生產環境**嚴禁** root 使用 %,應建立專用應用帳號並限制具體 IP 段。

3. 修改用戶密碼

-- MySQL 5.7+ (authentication_string 欄位)
UPDATE user SET authentication_string = PASSWORD('newpass') WHERE User = 'geovindu';
UPDATE user SET plugin = 'mysql_native_password' WHERE User = 'geovindu';  -- 確保原生認證
FLUSH PRIVILEGES;

-- MySQL 5.6 (Password 欄位)
UPDATE user SET Password = PASSWORD('newpass') WHERE User = 'geovindu';
FLUSH PRIVILEGES;

4. 建立新用戶並授權 (推薦方式)

-- 5.7+
CREATE USER 'app_user'@'192.168.1.%' IDENTIFIED BY 'StrongPass123!';
GRANT SELECT, INSERT, UPDATE, DELETE ON app_db.* TO 'app_user'@'192.168.1.%';
FLUSH PRIVILEGES;

-- 5.6
GRANT SELECT, INSERT, UPDATE, DELETE ON app_db.* TO 'app_user'@'192.168.1.%' IDENTIFIED BY 'StrongPass123!';

二、MySQL Control Center 圖形化管理

官方推薦工具:MySQL Control Center (非安裝版,SourceForge 下載),提供直觀的用戶權限矩陣管理介面。

三、版本關鍵差異對照

項目MySQL 5.6MySQL 5.7+
密碼欄位Passwordauthentication_string
認證插件無預設mysql_native_password / caching_sha2_password
建用戶語法GRANT ... IDENTIFIED BYCREATE USER ... IDENTIFIED BY
密碼過期策略無支援 password_expired
權限表結構較簡單新增 proxy 權限、角色支援 (8.0)

四、安全加固清單

  1. 執行 mysql_secure_installation:移除匿名用戶、禁止 root 遠端、移除 test 庫、重載權限
  2. root 帳號:僅允許 localhost,強密碼,定期輪換
  3. 應用帳號:最小權限原則,限定具體 IP/網段,僅授予業務必需權限
  4. 啟用 SSL 連線:REQUIRE SSL 在 GRANT 中指定
  5. 審計日誌:企業版或 MariaDB 內建審計插件
  6. 定期查詢 mysql.user 審計異常帳號

五、常見問題排查

現象原因解決
遠端連線 1130 錯誤用戶 Host 不匹配建立 % 或具體 IP 的用戶,FLUSH PRIVILEGES
密碼正確但無法登入認證插件不匹配 (caching_sha2_password)ALTER USER ... IDENTIFIED WITH mysql_native_password BY 'pass'
FLUSH PRIVILEGES 無效直接修改 user 表未重載必須執行 FLUSH PRIVILEGES 或 mysqladmin reload
權限生效延遲權限快取重新連線或 FLUSH PRIVILEGES

總結

MySQL 權限管理核心:系統庫 user 表為源頭,FLUSH PRIVILEGES 為生效開關,版本差異在欄位名與認證插件。生產環境堅持:專用帳號 + 最小權限 + 具體 IP + 強密碼 + 定期審計 六字真言,拒絕 root 遠端、拒絕通配符濫用。

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