
# 调测Hive Python样例程序
#### Python样例工程的命令行形式运行
1. 赋予"python-examples"文件夹中脚本的可执行权限。在命令行终端执行以下命令： 
   **chmod +x python-examples -** **R**。
   
   
2. 在python-examples/pyCLI_sec.py中的hosts数组中填写安装HiveServer的节点的业务平面IP。
3. 在python-examples/pyCLI_sec.py和python-examples/pyline.py的conf数组中的"hadoop.hadoop.com"修改为hadoop.*实际域名*。实际域名可登录FusionInsight Manager，选择"系统 \> 权限 \> 域和互信 \> 本端域" 查看。
4. 先使用**kinit** 命令获取kerberos认证的缓存。
   
   使用[准备MRS应用开发用户](https://support.huaweicloud.com/devg-lts-mrs/mrs_07_020002.html)章节中创建的开发用户执行以下命令运行客户端程序：
   **kinit -kt** *keytab* *的存储路径 username*
   **cd python-examples**
   **python pyCLI_sec.py**
   
   
5. 在命令行终端查看样例代码中的HQL所查询出的结果。例如： 
   ```
   [['default', '']] 
    [{'comment': 'from deserializer', 'columnName': 'tab_name', 'type': 'STRING_TYPE'}] 
    ['xx']
   ```
   ![](https://support.huaweicloud.com/devg-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
   如果出现如下异常：
   ```
   importError: libsasl2.so.2: cannot open shared object file: No such file or directory
   ```
   请按照以下方式处理：
   1. 首先执行如下命令，查询所装操作系统中LibSASL的版本
      ```
      ldconfig -p|grep sasl
      ```
      结果如下则表示当前操作系统仅存在3.x版本
      ```
      libsasl2.so.3 (libc6,x86-64) => /usr/lib64/libsasl2.so.3
      libsasl2.so.3 (libc6) => /usr/lib/libsasl2.so.3
      ```
      
   
   2. 如果仅存在3.x版本，需要执行如下命令创建软链接
      ```
      ln -s /usr/lib64/libsasl2.so.3.0.0 /usr/lib64/libsasl2.so.2
      ```
      
    
   
   
 
