JDBC 连接到 SAP/Sybase IQ,主从配置失败

JDBC connection to SAP/Sybase IQ with master-slave configuration failing

我正在尝试连接到 SAP/Sybase IQ 数据库,该数据库是 运行 主从配置。当我连接到主服务器时,连接成功。但是,对于从服务器,我只有在将完全管理员权限(或 SERVER OPERATOR,用 Sybase 术语)分配给我正在使用的用户时才能连接;否则我会收到 "Login Failed" 错误。我确保 username/password 是正确的,事实上,它们在 master 上运行良好。

我既没有连接到主服务器的选项,也无法长期获得完全管理员权限。有什么我可以做的,让我的 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
   }
 }
}

在数据库中添加 charset=eucgb url 将解决问题。 例子: "jdbc:sybase:Tds:host:port/dbname?charset=eucgb"