与主从配置失败的JDBC / Sybase IQ的JDBC连接

时间:2016-09-23 10:09:51

标签: jdbc sybase-iq

我正在尝试连接到以主从配置运行的SAP / Sybase IQ数据库。连接到主服务器时,连接成功。但是,对于从属服务器,只有在为我正在使用的用户分配完全管理员权限(或者Sybase服务器中的服务器操作员)时,才能连接;没有我得到"登录失败"错误。我确保用户名/密码是正确的,事实上,它们在主服务器上运行良好。

我既没有连接到主服务器的选项,也无法长期获得完全管理员权限。有什么我可以做的事情让我的JDBC代码与这个主从配置的从设备一起工作吗?下面是我的Java JDBC代码,这是相当标准的。

import java.sql.*;

public class SybaseJDBCConnector {
   static final String JDBC_DRIVER = "com.sybase.jdbc4.jdbc.SybDriver";  
   static final String DB_URL = "jdbc:sybase:Tds:host:port/dbname";

   static final String USER = "username";
   static final String PASS = "password";

   public static void main(String[] args) {
   Connection conn = null;
   Statement stmt = null;
   try{
      Class.forName(JDBC_DRIVER);

      System.out.println("Connecting to database...");
      conn = DriverManager.getConnection(DB_URL,USER,PASS);
      System.out.println("Successfully connected");
      conn.close();
   }catch(SQLException se){
      se.printStackTrace();
   }catch(Exception e){
      e.printStackTrace();
   }finally{
      // do something
   }
 }
}

1 个答案:

答案 0 :(得分:0)

在db url中添加charset = eucgb将是唯一的问题。 例: “JDBC:SYBASE:TDS:主机:端口/ DBNAME字符集= EUCGB”