
# 在Windows中调测Impala JDBC应用
#### JDBC客户端的命令行形式运行
1. 运行样例。 
   依照[准备Impala JDBC客户端](https://support.huaweicloud.com/devg-mrs/mrs_06_0443.html)中导入和修改样例后，并从集群Manager获取到keytab文件放置到样例工程的conf下（普通模式集群可忽略），即"impala-examples/conf"。即可在开发环境中（例如Eclipse中），右击"JDBCExample.java"，单击"Run as \> Java Application"运行对应的应用程序工程。
   ![](https://support.huaweicloud.com/devg-mrs/public_sys-resources/note_3.0-zh-cn.png)
   使用windows访问MRS集群来操作Impala，有如下两种方式。
   - 申请一台windows的ECS访问MRS集群操作Impala。
   
   - 使用本机访问MRS集群操作Impala。
   
   
   方法一：申请一台windows的ECS访问MRS集群操作Impala。在安装开发环境后可直接运行样例代码。申请ECS访问MRS集群的步骤如下。
   1. 在"现有集群"列表中，单击已创建的集群名称。 记录集群的"可用分区"、"虚拟私有云"，以及Master节点的"默认安全组"。
      
   
   2. 在弹性云服务管理控制台，创建一个新的弹性云服务器。 弹性云服务器的"可用分区"、"虚拟私有云"、"安全组"，需要和待访问集群的配置相同。
      选择一个Windows系统的公共镜像。
      其他配置参数详细信息，请参见"弹性云服务器 \> 快速入门 \> 购买并登录Windows弹性云服务器"
      
    
   方法二：使用本机访问MRS集群操作Impala。在安装开发环境后并完成以下步骤后再运行样例代码。
   1. 为任意一个Core节点绑定弹性公网IP，完成后将该IP地址配置在开发样例的client.properties下的impala-server配置项中，用于访问Impala服务、提交SQL语句。步骤如下。
      1. 在虚拟私有云管理控制台，申请一个弹性IP地址，并与弹性云服务器绑定。 具体请参见"虚拟私有云 \> 用户指南 \> 弹性公网IP \> 为弹性云服务器申请和绑定弹性公网IP"。
         
      
      2. 为MRS集群开放安全组规则。 在集群Master节点和Core节点的安全组添加安全组规则使弹性云服务器可以访问集群。请参见"虚拟私有云 \> 用户指南 \> 安全性 \> 安全组 \> 添加安全组规则"。
         
       
   
   2. 修改导入样例的krb5.conf中"kdc","admin_server"和"kpasswd_server"三个参数的ip，使其对应于KrbServer服务中对应的弹性公网IP（Kerberos服务默认在Master节点上，此处取Master节点的公网IP）（由于普通集群未启用kerberos功能，可跳过此步骤）。
   
   
   
   样例中的client.properties配置如下：
   ```
   auth = KERBEROS    ##kerberos模式
   principal = impala/node-ana-corexphm@10530B19_8446_4846_97BD_87880A2535DF.COM  ##所要连接的impalad实例使用的principal
   impala-server = XX.XX.XX.XX:21050   ##指定要连接的impalad实例所在Core节点绑定的服务地址，方式二需要填写步骤1中绑定的弹性公网IP
   ```
   
   
2. 查看结果。 
   查看样例代码中的Impala SQL所查询出的结果，运行成功结果会有如下信息。
   JDBC客户端运行及结果查看。
   ```
   Create table success!
   _c0
   0
   Delete table success!
   ```
   
   
 
