![](/img/trans.png)
[英]Can't connect my android studio with MySQL database, the online server
[英]Dedicated server: why can't my JAVA application connect to my MySQL database?
我在Debian(amd64)下有一个专用服务器。
我使用phpmyadmin和Tomcat 6服务器安装了MySQL数据库,以部署我刚开发的JAVA应用程序。
部署后运行此应用程序时,将引发异常: org.hibernate.exception.GenericJDBCException: Cannot open connection
我以为我的数据库凭证可能是错误的,所以我写了一个小PHP脚本放在远程Apache2服务器上,看它是否可以连接到同一数据库,是的:可以。
这是我的PHP脚本:
$link = mysql_connect('localhost', 'mylogin', 'mypassword');
mysql_select_db('mydatabase', $link);
$query = mysql_query('SELECT * FROM source');
$result = mysql_fetch_array($query);
var_dump($result);
输出是我的source
表中条目的列表,好的。 那么,为什么我的JAVA应用程序无法连接到该#@ !?€数据库?
这是我的pom.xml
:
<jdbc.type>mysql</jdbc.type>
<jdbc.driver>com.mysql.jdbc.Driver</jdbc.driver>
<jdbc.url>jdbc:mysql://localhost/mydatabase</jdbc.url>
<jdbc.user>mylogin</jdbc.user>
<jdbc.password>mypassword</jdbc.password>
<hibernate.dialect>org.hibernate.dialect.MySQLInnoDBDialect</hibernate.dialect>
我也尝试过
<jdbc.url>jdbc:mysql://localhost:3306/mydatabase</jdbc.url>
和
<jdbc.url>jdbc:mysql://012.345.678.9:3306/mydatabase</jdbc.url>
但它仍然不起作用...
PS1:它像在我自己的计算机上的本地服务器上的超级按钮一样工作。
PS2:一切都在同一台远程计算机上(即MySQL,Tomcat和Apache)。
PS3:我购买了专用于Online的服务器(对于某些人来说可能有点法语...)。
PS4:请随时询问我更多细节,我不知道有什么对您有用,可以帮助我解决该问题...
我想您已经错过了<jdbc.url>
的port
。
您可以将URL从<jdbc.url>jdbc:mysql://localhost/mydatabase</jdbc.url>
为<jdbc.url>jdbc:mysql://localhost:port/mydatabase</jdbc.url>
。
端口主要是3306
。
您可以在端口上放入MySQL服务器的ip而不是localhost
,我认为它应该可以工作。
可能存在适当的防火墙规则。 在服务器安装上非常常见。
检查是否可以远程登录到mysql端口。 如果不是,请与系统管理员联系。
我终于使用mvn tomcat:deploy
部署了它,并且它起作用了。 之前,我是通过Tomcat的manager / html接口上载WAR文件的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.