我正在尝试将PHPStorm连接到我的网站服务器上的数据库,该数据库托管在BlueHost的一个Linux盒上。
为了做到这一点,我单击屏幕右侧的“数据源”选项卡,单击+图标,然后弹出DB“数据源属性”对话框。我为源输入了一个名称,将数据源级别设置为Project。然后下载了MySQL连接器/J-5.1.18 JDBC驱动程序文件。这在JDBC驱动程序类中填充了大约6-7个类,包括com.mysql.jdbc.Driver。
我认为我遇到的问题是在数据库URL上。它要求的是jdbc:// url,我对此并不熟悉。我使用了示例格式jdbc:mysql://host:port/database以及我的用户名和密码。
对于主机,我尝试过localhost,以及mysql服务器box###.bluehost.com的名称。端口3306,数据库的名称非常简单。
我在试图测试连接时收到了这个错误..。
Connection to Data Source failed
java.sql.SQLException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:344)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2332)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2369)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2153)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:792)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
in RemoteDriverImpl.connect(RemoteDriverImpl.java:27)
in LocalDataSource.getConnection(LocalDataSource.java:105)这个问题和这里的其他问题的主要区别是,这不是连接到wamp或mamp堆栈,而是一个远程数据库。
发布于 2012-07-29 05:34:25
BlueHost要求我将IP地址范围添加到允许访问主机列表中。我在一个共享主机帐户上,所以BlueHost似乎允许共享主机帐户上的远程连接。
为此,我单击了托管帐户的PHPMyAdmin旁边的“远程PHPMyAdmin”。cPanel自动检测到我的IP范围并建议我添加它。一旦我做到了,其他的一切都就位了。
感谢LazyOne为我指明了正确的方向。
发布于 2014-01-20 08:53:44
如果您正在使用Mamp并面临此问题,只需打开MAMP并取消选中“只允许本地访问”。
https://stackoverflow.com/questions/11704699
复制相似问题