Ubuntu
MySQL 無法通過 SSH 隧道連接——連接被拒絕
我正在嘗試使用 SSH 隧道從我的 MySQL GUI(如果重要的話是 Sequel Pro)連接到 MySQL。但是,我不斷收到以下錯誤(mysql.log):
$$ Note $$Aborted connection 98 to db: ’example’ user: ’example_user’ host: ’localhost’ (讀取通信數據包時出錯)
我的連接設置如下所示:
- SSH 主機:example.com
- SSH 埠:22
- SSH 使用者:example_user
- SSH 通行證:********
- 數據庫主機:127.0.0.1
- 數據庫使用者:example_user
- 數據庫密碼:********
- 數據庫名稱:範例
- 數據庫埠:3306
我可以毫無問題地連接到 SSH。我還可以從 SSH 內部連接到 MySQL(使用
mysql -u example_user -p -h 127.0.0.1
)但是,隧道不起作用。我有
AllowTcpForwarding yes
sshd_config。MySQL 配置有bind-address = 127.0.0.1
.我在我的伺服器中使用 16.04 LTS 和 MySQL Community Edition。
我究竟做錯了什麼?這是我第一次看到這個問題。
例如,您可以通過工作站上的命令創建多個隧道:
ssh -L 10080:127.0.0.1:80 -L 10006:127.0.0.1:3306 user@server
有:
127.0.0.1
- ip-address 隧道從伺服器連接的目標,80
和3306
目標埠,10080
以及10006
- 本地工作站的埠。這將允許您通過伺服器的 localhost 介面連接到 MySql 伺服器和 Http 伺服器。在工作站上執行命令mysql -p -u db_user -P 10006 -h 127.0.0.1 database_name
以連接到 MySql 伺服器。您可以連接到 PhpMyAdmin Web 界面,該界面僅允許從 127.0.0.1 訪問。為此,只需http://127.0.0.1:10080
在瀏覽器中寫入地址。