无法连接到凤凰城?

时间:2015-10-09 09:44:07

标签: java hbase phoenix

我连接到Phoenix,我遇到一个奇怪的问题:在某些机器上我可以成功连接,但我可以让连接失败。但是当它失败时,它只是not throw any exception,它是blocked,所以我不知道这有什么问题。我在哪里可以看到日志?

public class TestPhoenix {

    private static String driver = "org.apache.phoenix.jdbc.PhoenixDriver";
    private  static  String url = "jdbc:phoenix:192.168.1.91,192.168.1.50,192.168.1.60:2182";

    public static void main(String[] args)throws  Exception{

        Class.forName(driver);
        Properties properties = new Properties();

        if (driver.equals("org.apache.phoenix.jdbc.PhoenixDriver")){

            properties.setProperty("phoenix.functions.allowUserDefinedFunctions","true");

        }
        Connection conn = null;
        conn= DriverManager.getConnection(url, properties);

        System.out.println(conn);
    }

}

我用:

运行程序
java -cp phoenix-4.5.1-HBase-1.1.jar:. TestPhoenix

1 个答案:

答案 0 :(得分:0)

好的,我发现了问题,我没有在某台机器上配置主机。我将zookeeper配置如下:

server.1=data1:2888:3888
server.2=s5:2888:3888
server.3=s6:2888:3888

配置hadoop如下:

<property>
  <name>fs.defaultFS</name>
  <value>hdfs://s5.hadoop.ipin.com:20000</value>
  <description>The name of the default file system.  Either the
  literal string "local" or a host:port for DFS.</description>
</property>

问题是我没有在某台计算机中添加data1 s5 s6 s5.hadoop.ipin.com,所以我的程序总是试图获取这些主机,所以我配置{{ 1}}如下:

/etc/hosts

然后我可以成功连接