【发布时间】:2017-01-31 12:02:10
【问题描述】:
我正在尝试在 apache 嵌入式 derby 数据库中设置复制。 我正在关注DerbyAdmin guide 来实现相同的 -
据此,我必须先启动从属数据库,然后再启动主数据库。但是,一旦我尝试在从属 derby 实例方法调用上获取连接,就会卡住。它永远不会返回连接。以下是相同的代码 -
public static Connection getConnection(){
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
String url = "jdbc:derby:<slave db location>;startSlave=true";
System.out.println("about to fetch connection");
Connection con= null;
try{
con=DriverManager.getConnection(url, "root", "root");
}catch(Exception e){
e.printStackTrace();
}
System.out.println("return con -"+con);
return con;
}
输出
即将获取连接
为了确保项目中是否包含所有 derby 库,我尝试在没有 startSlave=true 属性的情况下获取连接,但它确实返回了连接。
public static Connection getConnection(){
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
String url = "jdbc:derby:<slave db location>;";
System.out.println("about to fetch connection");
Connection con= null;
try{
con=DriverManager.getConnection(url, "root", "root");
}catch(Exception e){
e.printStackTrace();
}
System.out.println("return con -"+con);
return con;
}
输出
即将获取连接
return con -org.apache.derby.impl.jdbc.EmbedConnection@2022850302 (XID = 420), (SESSIONID = 1), (DATABASE = I:/R&D/derby replication/Slave/replMaster), (DRDAID =空)
我尝试检查 derby.log 文件,但日志文件也是空的。 让我知道出了什么问题。
提前致谢。
【问题讨论】:
标签: java apache embedded-database