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

MySQL 開啟遠程訪問兩步走:防火牆與賬號授權

     編輯:MySQL 資料庫相關知識

遠程連接 MySQL 只需兩步:開放端口、創建授權賬號。本文提供標準化操作流程。

步驟一:防火牆放行 3306 端口

  • Windows:高級安全防火牆 → 入站規則 → 新建規則 → 端口 3306 TCP → 允許連接
  • Linux(iptables):iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
  • Linux(firewalld):firewall-cmd --permanent --add-port=3306/tcp && firewall-cmd --reload
  • 雲服務器:控制台安全組添加 3306 入站規則

若修改過默認端口,同步放行新端口。

步驟二:創建遠程賬號並授權

# 登錄本地 root
mysql -uroot -p123456

# 創建賬號並授權(指定 IP)
GRANT ALL PRIVILEGES ON discuz.* 
TO 'ted'@'123.123.123.123' 
IDENTIFIED BY '123456';

# 或允許任意 IP(慎用生產環境)
GRANT ALL PRIVILEGES ON discuz.* 
TO 'ted'@'%' 
IDENTIFIED BY '123456';

# 立即生效
FLUSH PRIVILEGES;

參數詳解

參數說明示例
ALL PRIVILEGES所有權限,可細化為 SELECT,INSERT...SELECT, INSERT, UPDATE
discuz.*數據庫.表,* 表示所有表*.* 所有庫所有表
ted用戶名(可不存在,自動創建)—
123.123.123.123允許連接的客戶端 IP% 表示任意 IP
123456密碼—

安全加固建議

  1. 禁止 root 遠程登錄:DELETE FROM mysql.user WHERE User='root' AND Host!='localhost';
  2. 使用強密碼策略(長度、複雜度、定期輪換)
  3. 限制具體 IP 或 CIDR 網段,避免 %
  4. 啟用 SSL 連接:REQUIRE SSL
  5. 異常登錄審計:通用日志或審計插件

驗證連接

# 客戶端測試
mysql -h server_ip -u ted -p123456 -D discuz
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved