Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在线连接到多个数据库?_Java_Mysql_Database_Database Connection - Fatal编程技术网

Java 如何在线连接到多个数据库?

Java 如何在线连接到多个数据库?,java,mysql,database,database-connection,Java,Mysql,Database,Database Connection,这里我试图连接到多个数据库这里是我的代码,这个代码在本地机器上运行良好,但当我上传到网上时,它不起作用,我可以得到任何帮助吗?谢谢 package dbase.sqlcon; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class ConnectionHelper{ private String url; private String

这里我试图连接到多个数据库这里是我的代码,这个代码在本地机器上运行良好,但当我上传到网上时,它不起作用,我可以得到任何帮助吗?谢谢

package dbase.sqlcon;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectionHelper{
    private String url;
    private String restrnturl;
    private String prptyurl;
    private String user= "root";
    private String pass= "mysql";
    private String userRestaurent= "root";
    private String passRestaurent= "mysql";
    private String userProperty= "root";
    private String passProperty= "mysql";

    private ConnectionHelper() {
        try {
            Class.forName("com.mysql.jdbc.Driver");

            URLDecoder.decode(getClass().getClassLoader().getResource("flex/testdrive").toString(), "UTF-8");



            url = "jdbc:mysql://192.168.10.1:3306/desisquare";
            restrnturl="jdbc:mysql://192.168.10.1:3306/foodndine";
            prptyurl="jdbc:mysql://192.168.10.1:3306/postaproperty";

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static Connection getConnection() throws SQLException {
        if (instance == null) {
            instance = new ConnectionHelper();
        }
        return DriverManager.getConnection(instance.url, instance.user, instance.pass);
    }
    public static Connection getConnectionrestaurent() throws SQLException {
        if (instance == null) {
            instance = new ConnectionHelper();
        }
        return DriverManager.getConnection(instance.restrnturl, instance.userRestaurent, instance.passRestaurent);
    }
    public static Connection getConnectionproperty() throws SQLException {
        if (instance == null) {
            instance = new ConnectionHelper();
        }
        return DriverManager.getConnection(instance.prptyurl, instance.userProperty, instance.passProperty);
    }

}
当我问我的主机提供商有什么问题时,他给我发了这个对我来说很新的东西

INFO | jvm 1 | 2014/04/18 06:23:03 | Exception is ;java.sql.SQLException: Access denied for user 'postaproperty'@'localhost' (using password: YES)
INFO | jvm 1 | 2014/04/18 06:23:03 | Exception is ;java.sql.SQLException: Access denied for user 'postaproperty'@'localhost' (using password: YES)
INFO | jvm 1 | 2014/04/18 06:23:03 | Exception is ;java.sql.SQLException: Access denied for user 'foodndine'@'localhost' (using password: YES)

有些事情可能也出了问题。但是,正如您所提到的,一旦您尝试从外部访问数据库,问题就会发生,这些异常消息可能表明您的数据库无法访问,原因是:

-在my.cnf中,您应该验证--skip networking已被注释掉:

[mysqld]
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
language        = /usr/share/mysql/English
bind-address    = 65.55.55.2
# skip-networking
也就是说,您的数据库通过TCP/IP接受消息

  • 验证您的数据库服务器正在3306端口上侦听
  • 验证192.168.10.1是否可从部署站点(telnet 192.168.10.1:3306)访问,因为可能有防火墙阻止端口或DNS不知道此IP地址

你检查过你的登录数据吗?是的,我检查过了。在SO中找到了一个链接。检查。还有一件事需要调试。仅使用PostProperty并部署代码。您是否能够使用代码中提供的登录到联机数据库?在xampp中my.cnf在哪里?