gpt4 book ai didi

java - 可以通过 MySQL Workbench 连接到远程数据库,但不能通过 Java JDBC

转载 作者:行者123 更新时间:2023-11-30 23:20:32 44 4
gpt4 key购买 nike

我有一个可以使用 MySQL Workbench 连接到的远程 MySQL 数据库(下面的屏幕截图),但我最终需要通过 JBDC 连接到它,每次我尝试连接时,它都会抛出异常。我是这方面的新手,所以任何人都可以向我提供一些可能出错的见解吗?

String host = "testdb.db.10682960.hostedresource.com";
String datab = "testdb";
String url = "jdbc:mysql://" + host + ":3306/" + datab;
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn = DriverManager.getConnection(url, datab, "password");

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: 无法创建与数据库服务器的连接。

MySQL Workbench Connection

编辑:不确定这是否相关,但我在 Android 上运行它。

最佳答案

您似乎缺少用户名。尝试在您的网址末尾添加“?user=testdb”。

编辑:我没有意识到这是一个 Android 应用程序。从技术上讲,这应该是可能的,但不可取。您的网络连接将不那么可靠,并且您会将服务器凭据推送给您的客户端。使用 REST API 从您的 Android 到与数据库位于同一数据中心的网络服务器进行通信是一种更安全的选择。

我没有在 Android 上尝试此操作的经验...所以我不知道会抛出什么异常,例如,如果您无法从 Android 的网络连接到达端口 3306。不过,即使您让它正常工作,也请考虑改用 Web 服务。

关于java - 可以通过 MySQL Workbench 连接到远程数据库,但不能通过 Java JDBC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15696341/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com