![](/img/trans.png)
[英]Java Web Application can't connect database on remote Tomcat 8 Server
[英]can not connect to remote mysql server from java application
我創建了Java應用程序。 它可以在本地主機上工作。 但是無法連接到遠程服務器。 這是我的代碼
public Connection getDBConnection() throws Exception {
Connection conn = null;
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection("jdbc:mysql://192.168.0.101:8081/mydb", "user", "password");
return conn;
}
我使用的是JDBC驅動程序。
但我收到錯誤消息
Communications link failure
成功發送到服務器的最后一個數據包是在0毫秒之前。 驅動程序尚未收到來自服務器的任何數據包。
我該如何解決這個問題。
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
"databaseName=dbname;user=1111;password=1111;";
Connection con = DriverManager.getConnection(connectionUrl);
} catch (SQLException e) {
System.out.println("SQL Exception: "+ e.toString());
} catch (ClassNotFoundException cE) {
System.out.println("Class Not Found Exception: "+ cE.toString());
}
更改數據庫名稱和用戶以及密碼,然后就可以了
我認為服務器可能未配置為接受來自您的公共IP地址的請求。 例如,在cPanel中,您需要“允許”從特定IP地址訪問MySQL。 默認情況下,僅允許本地主機。 您可能需要聯系服務器管理員,並請求允許您的IP訪問MySQL服務器。
您絕對不是身份驗證問題,否則您將收到身份驗證失敗響應。
您也可以嘗試從任何MySQL客戶端應用程序(例如MySQL Workbench,SQLYog等)連接到服務器以測試問題。
還要檢查連接字符串中的MySQL服務器IP地址/名稱是否正確,因為我們無法在此處確認。 與您的服務器管理員一起檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.