我铺了付费托管,我添加了我的数据库。我试图从我的java桌面应用程序连接到这个在线数据库但是,我得到了例外:通信链接失败。
这是我的代码:
public Kviz_DAO(){
try{
Class.forName("com.mysql.jdbc.Driver");
konekcija = DriverManager.getConnection("jdbc:mysql://penal.ba:2082/mydatabasename?"+
"user=mydbuser&password=mydbpassword");
}
catch(Exception ex){
ex.printStackTrace();
}
}
任何人都可以告诉我我做错了什么。
答案 0 :(得分:0)
MySQL的默认端口是3306.您确定您使用的主机名和端口是否正确?
试试这个:
konekcija = DriverManager.getConnection("jdbc:mysql://penal.ba:2082/mydatabasename", mydbuser, mydbpassword);
检查一下:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure
您可以使用MySQL管理员进行连接吗?
答案 1 :(得分:0)
检查您的IP的数据库服务器是否有权限。如果没有,则授予 IP 的权限
GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
如果不起作用,请检查防火墙。
答案 2 :(得分:0)
示例代码:
String url1 = "jdbc:mysql://localhost:3306/";
String db1 = "userdb";
String driver1 = "com.mysql.jdbc.Driver";
String user1 = "root";
String pass1 = "sarakrish";
try {
Class.forName(driver1).newInstance();
con = DriverManager.getConnection(url1 + db1, user1, pass1);
你应该尝试这种方法:
String url = "jdbc:mysql://penal.ba:2082/";
String db = "mydatabasename";
String driver = "com.mysql.jdbc.Driver";
String user = "mydbuser";
String pass = "mydbpassword";
Class.forName("com.mysql.jdbc.Driver");
konekcija = DriverManager.getConnection(url+db,user,pass);
答案 3 :(得分:0)
下载连接器J.将它添加到类路径和代码中:
// This will load the MySQL driver, each DB has its own driver
Class.forName("com.mysql.jdbc.Driver");
// Setup the connection with the DB
connect = DriverManager
.getConnection("jdbc:mysql://remoteUri/database-name?"
+ "user=user&password=userpw");
答案 4 :(得分:0)
Connection konekcija = DriverManager.getConnection("jdbc:mysql://penal.ba:2082/mydatabasename?" + "user=mydbuser&password=mydbpassword");
//konekcija should be an object of Connection class.....I think :-p
答案 5 :(得分:0)
如果您无法连接到远程MySql数据库,这是由于托管公司/服务器的权限。您可以通过添加ip权限来解决此问题。