Mysql

在 Mac OS X 上轉發埠 3306 以連接到遠端 MySQL 數據庫

  • June 23, 2020

我在 Mac OS X 10.6.2 上嘗試連接到 linode 的 ubuntu 伺服器 8.04.1。

ssh -L 127.0.0.1:3306:[[remote ip]]:3306 user@server -N

我想設置 ssh 隧道,以便我可以訪問遠端 mysql 伺服器。

首先,我被告知bind: Address already in use。這只是在我之前嘗試過該命令之後。如何手動關閉埠轉發會話?

其次,當我將命令更改為時ssh -L 127.0.0.1:3310:[[remote ip]]:3306 user@server -N(我將本地埠更改為監聽)。channel 1: open failed: connect failed: Connection refused當我嘗試通過 MySQL 工作台或 sequel pro 連接到 MySQL 伺服器時,我被告知。

要通過 MySQL 工作台連接,我使用以下設置:

  • 主機:127.0.0.1 埠:3310(如果正在使用 3306)
  • 使用者名:mysql使用者名
  • 密碼:mysql密碼
  • 數據庫:我什麼都沒放

這應該有效:

ssh -L 3310:127.0.0.1:3306 user@server

第一個埠號是要使用的本地埠(必須不是已經在使用的),冒號之間的 IP 是要連接的 IP,從您要連接的主機的角度來看。第二個埠號是要連接的埠。如果您連接到的伺服器不是您要連接的伺服器,請嘗試以下操作:

ssh -L 3310:<remote-IP>:3306 user@server

通常,當我想多次執行此操作時,我會在 ~/.ssh/config 中創建一個條目,如下所示,其中 sshhost.example.com 是我要連接到的伺服器,我要打開的本地埠是 5910 ,我要連接的另一端IP是192.168.35.69,我要連接的埠是5900:

Host desk
   Hostname sshhost.example.com
   User jed
   Port 22
   LocalForward 5910 192.168.35.69:5900

然後從命令提示符我可以做

jed@jed-mbp:~$ ssh desk

並在辦公室找到通往我桌面的隧道。

祝你好運,

——傑德

引用自:https://serverfault.com/questions/128923