【问题标题】:How to connect MYSQL database From a Admin system using Eclipse Juno?如何使用 Eclipse Juno 从管理系统连接 MYSQL 数据库?
【发布时间】:2014-03-04 18:16:17
【问题描述】:

我尝试在服务器和客户端系统之间创建 Mysql 连接。我的管理系统 IP 地址是 (192.168.1.5)。我有一个数据库“测试”。我下载了 mysql-connector-java-5.1.29 并添加了 Java Buildpath。 截图如下:

每当我尝试测试连接时,它都会显示这样的错误..

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链路故障

最后一个成功发送到服务器的数据包是在 0 毫秒前。驱动没有收到服务器发来的任何数据包。

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1129)

at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:358)

at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2498)

at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2535)

at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2320)

at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)

at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)

at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:347)

at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.createConnection(JDBCConnection.java:214)

at org.eclipse.datatools.connectivity.DriverConnectionBase.internalCreateConnection(DriverConnectionBase.java:105)

at org.eclipse.datatools.connectivity.DriverConnectionBase.open(DriverConnectionBase.java:54)

at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.open(JDBCConnection.java:73)

at org.eclipse.datatools.enablement.internal.mysql.connection.JDBCMySQLConnectionFactory.createConnection(JDBCMySQLConnectionFactory.java:28)

at org.eclipse.datatools.connectivity.internal.ConnectionFactoryProvider.createConnection(ConnectionFactoryProvider.java:83)

at org.eclipse.datatools.connectivity.internal.ConnectionProfile.createConnection(ConnectionProfile.java:359)

at org.eclipse.datatools.connectivity.ui.PingJob.createTestConnection(PingJob.java:76)

at org.eclipse.datatools.connectivity.ui.PingJob.run(PingJob.java:59)

at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

原因:java.net.ConnectException:连接超时:连接

at java.net.DualStackPlainSocketImpl.connect0(Native Method)

at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)

at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)

at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)

at java.net.AbstractPlainSocketImpl.connect(Unknown Source)

at java.net.PlainSocketImpl.connect(Unknown Source)

at java.net.SocksSocketImpl.connect(Unknown Source)

at java.net.Socket.connect(Unknown Source)

at java.net.Socket.connect(Unknown Source)

at java.net.Socket.<init>(Unknown Source)

at java.net.Socket.<init>(Unknown Source)

at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256)

at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:308)

... 22 more

我也附上了截图..

请帮我解决这个问题..提前谢谢..

【问题讨论】:

  • 是您的数据库 atrics 或 test 的名称吗?您可能想在连接 url 中再次查看您的数据库名称。
  • 你能从你的客户端机器上ping你的服务器吗?您是否有任何防火墙设置阻止您的服务器?
  • 感谢您的宝贵回复.. 抱歉我弄错了...我的 IP 地址是 192.168.1.5,数据库名称是 atrics。请帮我解决这个问题
  • 不...我可以轻松地从客户端系统 ping 服务器..
  • 任何人请帮我解决这个问题@Gyanapriya

标签: java mysql eclipse


【解决方案1】:

将您的网址更改为:jdbc:mysql://192.168.1.5:3306/ 并将您的数据库名称改为 atrics 而不是 test。 HTH。 查看http://itsolutionsforall.com/eclipse_sql.php

【讨论】:

  • 你知道eclipse中的MYSQL服务器-客户端连接教程吗?
  • 用教程链接更新了我的答案。 HTH。
  • 是的,这很好..我得到了解决方案。我在我的问题中更新了这一点。谢谢大家
【解决方案2】:

更新的解决方案:

使用 Eclipse 的客户端/服务器网络之间的 MySQL 连接: •从http://www.mysql.com/下载最新的MySQL软件 •将它安装到您的管理员系统。 •从以下下载 MySQL 连接器: http://dev.mysql.com/downloads/connector/j/ (仅下载 .zip 或 .rar 文件) •在特定位置提取文件。例子, D:\eclipse\mysql-connector-java-5.1.29 •现在登录到您的管理系统并从程序列表中打开“MySQL 命令行客户端”。 •输入密码。 (在安装 MYSQL 时提供。默认为“root” •如果你得到任何类型的错误意味着你需要检查密码或重新安装MySQL。 •如果你成功意味着,你将在下一行得到mysql命令,如下所示 mysql> • 查看当前数据库。 mysql>显示数据库; •要使用新的数据库,

MySQL>use database_name;

示例: mysql>使用示例;

•查看表格,

mysql>show tables;

创建新用户:

• 使用以下查询创建新用户。 mysql>create user 'JsAtrics'@'192.168.1.6' 由'root'标识; • 授予授予权限, mysql>将.上的所有权限授予'JsAtrics'@'192.168.1.6'; • 一旦您完成了要为新用户设置的权限,请务必重新加载所有权限。

 mysql>flush privileges;
 mysql>select user();

mysql>select current_user();
mysql> select host,user,password,Grant_priv,Super_priv FROM mysql.user;

•将打开一个用户列表。检查您的用户名并将权限检查为“Y”。 •如果是“N”,执行以下,

UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='JsAtrics';
FLUSH PRIVILEGES;

GRANT ALL ON *.* TO 'JsAtrics'@'192.168.1.6';

•现在再次检查以下内容:

mysql> select host,user,password,Grant_priv,Super_priv FROM mysql.user;

•如果您在权限中看到“Y”表示仅此而已。你完成了。

在 Eclipse 中测试连接: •打开Eclipse并单击窗口打开透视图其他数据库开发 • 现在数据源资源管理器在左侧或底部打开。 •右键单击数据库连接新建 MySQL下一步 •现在将打开一个新窗口。 •在连接窗口中单击新驱动程序(位于驱动程序列表的右侧) •选择“MySQL JDBC Driver 5.1”并移动到“Jar list”选项卡并单击全部清除。并单击“添加 Jar”并更新您之前下载并在位置 D:\eclipse\mysql-connector-java-5.1.29 中提取的新连接器 •添加jar 文件后,移动到属性选项卡。在那里面 连接网址:jdbc:mysql://192.168.1.5:3306/sample 数据库名称:样本 驱动类:com.mysql.jdbc.Driver 密码:root 用户 ID:JsAtrics •然后单击“确定”现在单击“保存密码”。 •现在我们可以检查连接了。所以点击“测试连接” •它将显示一条消息“Ping Succeeded”。 •单击“确定”并单击“完成”。 •现在数据库连接到您的客户端系统..!!!

注意:如果您发现其中有任何错误,请再次阅读上述步骤并再次执行上述步骤。

【讨论】:

    猜你喜欢
    • 2020-10-28
    • 2015-11-03
    • 2015-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-25
    • 2012-08-17
    相关资源
    最近更新 更多