我在電腦A上運行mysql,並且可以連接到它,如A~ $ mysql -u punkish -p database
等等。mysql over ssh over non-standard port
我有權訪問計算機B,該計算機上也運行着mysql。我可以通過端口2200建立SSH密鑰對ssh到B,而一旦在,我可以連接到數據庫,像這樣
A~ $ ssh -p 2200 [email protected]
B~ $ mysql -u punkish -p database
不過,我想設置通過SSH端口轉發我的電腦上,因此所有在我的計算機A的端口3307上爲mysql提出的請求實際上被髮送到B上的端口3306上。這將允許我使用想要連接到mysql的gui程序,但不能通過隧道進行。所以,我做了以下
A~ $ ssh -p 2200 -L 3307:B:3306 [email protected]
B~ $
上面記錄我正確的B.我不知道隧道是否建立,但我假設它是。但是,下面的失敗(在另一個終端
A~ $ mysql -P 3307 -u punkish -p
Enter password:
ERROR 1045 (28000): Access denied for user 'punkish'@'localhost' (using password: YES)
這裏是有趣的事情 - 我有另一個叫續集專業(桌面MySQL客戶端的Mac OS X的GUI程序),並且能夠進行連接到MySQL @ B,在SSH就好了。所以,我知道什麼工作......我只是不知道怎麼回事,所以我可能能夠啓用另一個GUI程序。
也許這會更適合超級用戶(http://superuser.com/)? – Eddie