文档首页 > > SDK参考> SQL作业相关SDK> 使用JDBC或ODBC连接DLI服务端> 使用Beeline连接DLI服务端

使用Beeline连接DLI服务端

分享
更新时间: 2019/06/10 15:06

DLI Beeline简介

DLI Beeline是一个用于连接DLI服务的客户端命令行交互工具,该工具基于DLI JDBC实现,提供SQL命令交互和批量SQL脚本执行的功能。

DLI Beeline下载

您可以在DLI管理控制台下载驱动文件。

  1. 登录DLI管理控制台。
  2. 单击总览页右侧“常用链接”中的“SDK下载”。
  3. 在“DLI SDK DOWNLOAD”页面,单击“huaweicloud-dli-beeline-1.1.1”即可下载Beeline驱动。

    说明:

    Beeline客户端命名为“dli-beeline-<version>-bin.tar.gz”,支持在Linux环境中使用,且依赖JDK 1.7及以上版本。

使用DLI Beeline连接服务端

使用DLI Beeline的机器安装JDK 1.7或以上版本并配置环境变量,推荐在Linux环境下使用Beeline工具。

  1. 下载并解压工具包“dli-beeline-<version>-bin.tar.gz”,其中version为版本号,以实际版本号为准。
  2. 进入解压目录,里面有三个子目录bin、conf、lib,分别存放了Beeline相关的执行脚本、配置文件和依赖包。
  3. 进入配置文件conf目录,将“connection.properties.template”重命名成“connection.properties”,并配置连接参数(具体连接参数请参考使用JDBC连接服务端中的表2表3)。
  4. 进入执行脚本bin目录,启动beeline脚本,执行连接命令即可执行SQL语句,如下所示:

    %bin/beeline
    Start Beeline
    Welcome to DLI service !
    beeline> !connect
    Connecting from the default connection.properties
    Connecting to jdbc:dli://dli.cn-north-1.myhuaweicloud.com/8fc20d97a4444cafba3c3a8639380003
    Connected to: DLI service
    jdbc:dli://dli.cn-north-1.myhuaweicloud... (not set)> show databases;
    +--------------------+
    |    databaseName    |
    +--------------------+
    | bjhk               |
    | db_xd              |
    | dimensions_adgame  |
    | odbc_db            |
    | sdk_db             |
    | tpch_csv_1024      |
    | tpch_csv_4g_new    |
    | tpchnewtest        |
    | tpchtest           |
    | xunjian            |
    +--------------------+
    10 rows selected (0.338 seconds)

    用户也可以在启动beeline脚本时通过命令行选项设置连接参数,如下所示,如果连接参数不全,Beeline会提示补全相关信息。

    %bin/beeline -u 'jdbc:dli://dli.cn-north-1.myhuaweicloud.com/8fc20d97a4444cafba3c3a8639380003? authenticationmode=aksk'
    Start Beeline
    Connecting to jdbc:dli://dli.cn-north-1.myhuaweicloud.com/8fc20d97a4444cafba3c3a8639380003?usehttpproxy=true;proxyhost=10.186.60.154;proxyport=3128;authenticationmode=aksk
    Enter region name: cn-north-1
    Enter service name: DLI
    Enter access key(AK): <real access key>
    Enter secret key(SK): ****************************************
    Enter queue name: default
    Connected to: DLI service
    Welcome to DLI service !
    jdbc:dli://dli.cn-north-1.myhuaweicloud... (not set)> 

DLI Beeline支持的命令

DLI Beeline支持一系列命令,每个命令以 ! 这个符号开始,例如!connect。具体请参考表1

表1 DLI Beeline支持的命令

命令

描述

!connect

通过输入连接参数的方式连接到DLI服务,若不输入参数,则加载默认的“connection.properties”文件连接。

!help

打印命令行的帮助文档。

!history

展示命令行执行历史。

!outputformat

设置查询结果的输出格式,支持table,vertical,csv2,dsv,tsv2,xmlattr,xmlelements,每一种格式的具体说明详参见查询输出格式

!properties

通过加载“connection.properties”文件连接到DLI服务。该功能与!connect相同,但是可以指定连接配置文件。

!quit

退出beeline会话。

!run

执行一个SQL脚本。使用方法:

!run <scriptfile>

!save

将当前的会话属性保存至beeline.properties中,下次开启beeline时会自动加载这些属性。

!script

将执行的命令保存至一个文件中。例如:

!script /tmp/mysession.script

执行该语句之后,后续的命令将被保存至“/tmp/mysession.script”。

再次执行!script,结束脚本记录。执行如下语句,将会重新执行记录下来的命令。

!run /tmp/mysession.script

!set

设置Beeline变量,例如:

!set color true

!set后面不接参数则显示所有变量值。

!sh

执行一个Shell脚本。例如:

!sh <shellscript>

!sql

显性地执行一条SQL语句,beeline中不带命令的语句默认会转换成!sql命令,sql语句必须以分号结尾。例如:

!sql <sql>

!dliconf

查看DLI 自定义配置。

DLI Beeline支持的命令行选项

DLI Beeline支持的启动命令行选项请参考表2

表2 DLI Beeline支持的启动命令行选项

命令行选项

描述

-u <database URL>

连接DLI JDBC的url,其中url需要采用单引号括起来。使用方式:

beeline –u db_URL

-e <query>

需要执行的SQL语句,可以输入多条语句,以分号间隔,语句需要采用单引号括起来。

-f <file>

需要执行的脚本文件。

--dliconf property=value

待设置的DLI属性。

--property-file=<property-file>

通过指定的方式获取连接属性文件并连接到DLI服务。

--help

打印命令行选项帮助。

查询输出格式

DLI Beeline支持多种查询结果输出格式,输出格式可以通过!outputformat指定。DLI Beeline支持的输出格式包括:table,vertical,csv2,dsv,tsv2,xmlattr,xmlelements。

  • table

    table格式输出的结果以表的形式展示,例如:

    select id, value, comment from test_table
    +-----+---------+-----------------+
    | id  |  value  |     comment     |
    +-----+---------+-----------------+
    | 1   | Value1  | Test comment 1  |
    | 2   | Value2  | Test comment 2  |
    | 3   | Value3  | Test comment 3  |
    +-----+---------+-----------------+
  • vertical

    以行为单元组织数据,每一个属性以key-value的形式展示,例如:

    select id, value, comment from test_table
    id       1
    value    Value1
    comment  Test comment 1
    id       2
    value    Value2
    comment  Test comment 2
    id       3
    value    Value3
    comment  Test comment 3
  • csv2
    id,value,comment
    1,Value1,Test comment 1
    2,Value2,Test comment 2
    3,Value3,Test comment 3
  • dsv
    id|value |comment
    1 |Value1|Test comment 1
    2 |Value2|Test comment 2
    3 |Value3|Test comment 3
  • tsv2
    id value      comment
    1  Value1Test comment 1
    2  Value2Test comment 2
    3  Value3Test comment 3
  • Xmlattr
    <resultset>
      <result id="1" value="Value1" comment="Test comment 1"/>
      <result id="2" value="Value2" comment="Test comment 2"/>
      <result id="3" value="Value3" comment="Test comment 3"/>
    </resultset>
  • Xmlelements
    <resultset>
      <result>
        <id>1</id>
        <value>Value1</value>
        <comment>Test comment 1</comment>
      </result>
      <result>
        <id>2</id>
        <value>Value2</value>
        <comment>Test comment 2</comment>
      </result>
      <result>
        <id>3</id>
        <value>Value3</value>
        <comment>Test comment 3</comment>
      </result>
    </resultset>
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区