萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

phpMyAdmin 連接遠程 MySQL 資料庫完整配置教程

phpMyAdmin 連接遠程 MySQL 伺服器設定指南

本地 phpMyAdmin 管理遠程 MySQL 伺服器,需修改配置檔並開啟遠程存取權限。本文提供完整步驟。

步驟一:修改 phpMyAdmin 配置

編輯 config.inc.php

# 通常位於:
/usr/share/phpmyadmin/config.inc.php
# 或
/var/www/html/phpmyadmin/config.inc.php
# 或 Windows 下
C:\xampp\phpMyAdmin\config.inc.php

修改伺服器主機設定

$cfg['Servers'][$i]['host'] = '192.168.1.100';  // 遠程 MySQL IP
$cfg['Servers'][$i]['port'] = '3306';           // 端口,預設 3306
$cfg['Servers'][$i]['auth_type'] = 'cookie';    // 認證方式:cookie/http/config/signon

步驟二:MySQL 開啟遠程存取權限

登入遠程 MySQL

mysql -u root -p -h 192.168.1.100

建立遠程存取用戶

-- 允許任意 IP 連線 (開發/測試環境)
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;

-- 僅允許特定 IP (生產環境推薦)
CREATE USER 'remote_user'@'192.168.1.%' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON mydb.* TO 'remote_user'@'192.168.1.%';

刷新權限

FLUSH PRIVILEGES;

步驟三:防火牆開放 3306 端口

CentOS/RHEL 7+ (firewalld)

firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload

Ubuntu/Debian (ufw)

ufw allow 3306/tcp
ufw reload

iptables (通用)

iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
service iptables save

步驟四:MySQL 綁定地址配置

編輯 my.cnf

vim /etc/my.cnf

[mysqld]
bind-address = 0.0.0.0  # 監聽所有介面
# 或指定具體 IP
# bind-address = 192.168.1.100

skip-name-resolve       # 禁用 DNS 反向解析,加速連線

重啟 MySQL

systemctl restart mysqld

步驟五:驗證連線

  1. 瀏覽器訪問 phpMyAdmin
  2. 輸入遠程用戶名/密碼登入
  3. 成功看到遠程資料庫列表

常見問題排查

問題原因解決
連線超時防火牆阻擋開放 3306 端口
Host 'x.x.x.x' not allowed用戶無遠程權限GRANT ... TO user@'%' 或具體 IP
Authentication plugin 錯誤MySQL 8.0 預設 caching_sha2_password用戶指定 mysql_native_password
中文亂碼字符集不一致配置 utf8mb4、設定連線字符集

MySQL 8.0 專用:修正認證插件

ALTER USER 'remote_user'@'%' 
IDENTIFIED WITH mysql_native_password BY 'strong_password';

完成上述配置,本地 phpMyAdmin 即可安全管理遠程 MySQL 伺服器。

copyright © 萬盛學電腦網 all rights reserved