如何通過兩臺SSH主機連接MySQL數據庫?如何通過兩臺SSH主機連接MySQL數據庫
這是我的情況:我有兩個SSH主機,如下所示。 MySQL正在BOX2主機中運行。
MyBox(MySQL GUI client) -----SSH(port 22)--->BOX1(IP: 190.xx.xx.xx)---SSH(port 22)--->BOX2(IP: 190.xx.xx.xx)[MySQL server]
我的問題是我如何連接,如果我有多個SSH主機隧道如上所示?
如何通過兩臺SSH主機連接MySQL數據庫?如何通過兩臺SSH主機連接MySQL數據庫
這是我的情況:我有兩個SSH主機,如下所示。 MySQL正在BOX2主機中運行。
MyBox(MySQL GUI client) -----SSH(port 22)--->BOX1(IP: 190.xx.xx.xx)---SSH(port 22)--->BOX2(IP: 190.xx.xx.xx)[MySQL server]
我的問題是我如何連接,如果我有多個SSH主機隧道如上所示?
我認爲這會有所幫助。從客戶端試試從myBox上此命令(有MySQL客戶端)
ssh [email protected] -L some-local-port:box2:22
現在連接到這樣
MySQL host : localhost
MySQL usernmae : mysql-username-of-server-installed-at-Box2
MySQL password : mysql-password-of-server-installed-at-Box2
MySQL port : 3306 (suppose mysql server at Box-2 is listening at port 3306)
在隧道信息
SSH host : localhost
SSH pass : ssh-password-of-Box2
SSH port : some-local-port
嘗試以下操作:
ssh -L 33306:localhost:33306 [email protected]_hostname ssh -L 33306:localhost:3306 [email protected]_hostname
然後嘗試連接使用127.0.0.1:33306到MySQL。請注意,端口33306將提供給box1上的任何人,這對您而言可能是也可能不是問題。
另一種完成此操作的方法是使用ProxyCommand,如here所述。