Java 为什么JDBC无法连接到本地Mysql服务器

Java 为什么JDBC无法连接到本地Mysql服务器,java,mysql,linux,jdbc,Java,Mysql,Linux,Jdbc,我有一台装有CentOS和mysql服务器的机器(我们称之为“服务器”)。还有另一台(我的桌面)带有Debian的机器(我们称之为“桌面”)。我试图在台式机上启动java程序。应用程序连接到服务器的mysql数据库没有任何问题 当我完成这个应用程序的开发时(它仍然可以正常工作并且连接到DB),我尝试将这个应用程序部署到服务器机器上。我在服务器上构建了这个应用程序,并尝试使用数据库启动它,该数据库仍然托管在服务器机器上。所以现在它似乎是我的应用程序的本地数据库。但在使用服务器IP地址或“local

我有一台装有CentOS和mysql服务器的机器(我们称之为“服务器”)。还有另一台(我的桌面)带有Debian的机器(我们称之为“桌面”)。我试图在台式机上启动java程序。应用程序连接到服务器的mysql数据库没有任何问题

当我完成这个应用程序的开发时(它仍然可以正常工作并且连接到DB),我尝试将这个应用程序部署到服务器机器上。我在服务器上构建了这个应用程序,并尝试使用数据库启动它,该数据库仍然托管在服务器机器上。所以现在它似乎是我的应用程序的本地数据库。但在使用服务器IP地址或“localhost”或127.0.0.1连接到DB时失败。我只有:

java.sql.SQLException: null,  message from server: "Host '82.192.90.179' is not allowed to connect to this MySQL server". 
在服务器上的
my.cnf
文件中,我设置了“
绑定地址=0.0.0.0


PS:最有趣的是,我使用ssh在服务器上执行所有操作,如果我尝试使用“mysql”控制台工具连接到数据库,它可以使用-h82.192.90.179连接OK,也可以不使用-h选项(看起来像是本地主机故障)

要知道这是权限问题,请尝试启用全部授予。到“某个用户”@%

然后通过将%替换为“82.192.90.179”来修改上述语句

如果您觉得难以连接JDBC,请尝试使用mysql workbench

1.确保您必须将服务器代码托管到本地服务器或公共服务器

2.如果您托管本地服务器,则意味着它将无法工作

3.确保您的服务器是否处于活动状态

DB_URL=“jdbc:mysql://localhost:portnumber/databasename"

例如,DB_URL=“jdbc:mysql://localhost:3306/cmes"

在Web.xml中的服务器端维护会话配置,如下所示

<session-config>
  <session-timeout>-1</session-timeout> 
  </session-config>

-1 

您需要确定,我创建了一个新用户,授予了他所有权限,刷新了所有权限,重新启动了db服务器,尝试使用我的应用程序本地连接到db,并使用新用户帐户-同样的问题。尝试通过mysql命令与此用户连接-确定