2011-04-28 75 views
0

嗨,爲了訪問我的vps上的數據庫,我必須通過ssh進行連接,我已經使用MySQL WORKBENCH進行了測試,並且工作正常。 但創建數據庫連接時Netbeans(working ide)沒有提供ssh連接,所以我無法將我的本地應用程序連接到我的新服務器。 我該如何解決這個問題? 我如何設置我的jta數據源來處理這個問題?如何在vps中訪問數據庫

非常感謝您 問候 伊格納西奧

+0

是否存在ip @ user的順序; pass:我可以使用的端口? – 2011-04-28 18:03:25

回答

0

有兩種方法將NetBeans歸檔連接:

  1. 真正不安全的方法:使MySQL連接到互聯網的網絡接口進行監聽。在您的mysql配置文件中將綁定地址設置爲0.0.0.0,並且mysql將監聽所有接口。 http://dev.mysql.com/doc/refman/5.6/en/server-options.html#option_mysqld_bind-address然後,您可以從互聯網上的任何地方訪問MySql。
    請記住:這是一個嚴重的安全漏洞!搜索谷歌,你會發現很多文章詳細解釋了爲什麼。

  2. 安全的方法: SSH可以做端口轉發。這意味着,本地計算機上的一個端口將監聽連接,並將所有流量都良好地加密到遠程端口。在linux上,這是通過ssh -L 3306:localhost:3306 YOUR_SERVERS_IP完成的。然後,您可以在localhost:3306上訪問您的MySql-Server,就像它在本地計算機上運行一樣(只是速度較慢)。在Windows上,Putty可以配置爲執行相同的操作。我不記得確切的位置,但在設置連接的對話框中(在命令提示符之前),您還可以配置端口轉發。

  3. 編寫一個應用程序在您的服務器上運行,該服務器負責爲用戶授權和公開以及API(例如Youtube-api,其中有一些公開的方法,但也有一些需要驗證)。這可以通過許多不同的方式完成,如XMLRPC(使用網絡服務器和一些網絡應用程序)或自定義協議。這可能是最適合生產使用的一個。

+0

2是要走的路,但它還沒有工作,我從winwods通過膩子連接到linux,但命令說它已被使用,但是當我嘗試從netbeans連接失敗 – 2011-04-28 20:25:04

+1

@Ignacio聽起來就像你在那個端口上運行的東西一樣,我們的配置不起作用。如果您有任何其他服務在該vps上運行(例如網絡服務器),請嘗試重定向該服務。如果這種方法在MySql上有問題(僅在套接字上進行偵聽,請參閱「skip-networking」是否啓用..),如果沒有,則說明配置錯誤。 – Delphinator 2011-04-28 21:08:57

+0

你在哪裏,但現在差異的問題,如果可能,請看看新的問題,非常感謝你Muchhh – 2011-04-29 21:57:25

0

戳幾個洞在你的防火牆,讓NetBeans的連接?

我建議你簡單地將數據庫複製到你的開發環境中,除非你準備好'釋放',否則不要觸摸VPS。

+0

但是,當我意識到我的應用程序將需要連接到通過SSH的VPS中的數據庫(除非我現在糾正這個問題)。 – 2011-04-28 19:05:48

+0

我應該問我的管理員在防火牆中打開3306,那應該這樣做? – 2011-04-28 19:07:04