HiveServer2提供了一个新的命令行工具Beeline,它是基于SQLLine CLI的JDBC客户端。关于SQLLine的的知识,可以参考这个网站:http://sqlline.sourceforge.net/#manual
Beeline工作模式有两种,即本地嵌入模式和远程模式。嵌入模式情况下,它返回一个嵌入式的Hive(类似于Hive CLI)。而远程模式则是通过Thrift协议与某个单独的HiveServer2进程进行连接通信。
The Beeline CLI 支持以下命令行参数:
Option
Description
--autoCommit=[true/false]
Enable/disable automatic transaction commit. Default is false.
Usage: beeline --autoCommit=true
--autosave=[true/false]
Automatically save preferences (true) or do not autosave (false). Default is false.
Usage: beeline --autosave=true
--color=[true/false]
Control whether color is used for display. Default is false.
Usage: beeline --color=true
(Not supported for Separated-Value Output formats. See HIVE-9770)
--delimiterForDSV= DELIMITER
The delimiter for delimiter-separated values output format. Default is '|' character.
Version: 0.14.0 (HIVE-7390)
--fastConnect=[true/false]
When connecting, skip building a list of all tables and columns for tab-completion of
HiveQL statements (true) or build the list (false). Default is true.
Usage: beeline --fastConnect=false
--force=[true/false]
Continue running script even after errors (true) or do not continue (false). Default is false.
Usage: beeline--force=true
--headerInterval=ROWS
The interval for redisplaying column headers, in number of rows, when outputformat is table.
Default is 100.
Usage: beeline --headerInterval=50
(Not supported for Separated-Value Output formats. See HIVE-9770)
--help
Display a usage message.
Usage: beeline --help
--hiveconf property=value
Use value for the given configuration property. Properties that are listed in hive.conf.restricted.list cannot be reset with hiveconf (see Restricted List and Whitelist).
Usage: beeline --hiveconf prop1=value1
Version: 0.13.0 (HIVE-6173)
--hivevar name=value
Hive variable name and value. This is a Hive-specific setting in which variables can be set
at the session level and referenced in Hive commands or queries.
Usage: beeline --hivevar var1=value1
--incremental=[true/false]
Print output incrementally.
--isolation=LEVEL
Set the transaction isolation level to TRANSACTION_READ_COMMITTED
or TRANSACTION_SERIALIZABLE.
See the "Field Detail" section in the Java Connection documentation.
Usage: beeline --isolation=TRANSACTION_SERIALIZABLE
--maxColumnWidth=MAXCOLWIDTH
The maximum column width, in characters, when outputformat is table. Default is 15.
Usage: beeline --maxColumnWidth=25
--maxWidth=MAXWIDTH
The maximum width to display before truncating data, in characters, when outputformat is table.
Default is to query the terminal for current width, then fall back to 80.
Usage: beeline --maxWidth=150
--nullemptystring=[true/false]
Use historic behavior of printing null as empty string (true) or use current behavior of printing
null as NULL (false). Default is false.
Usage: beeline --nullemptystring=false
Version: 0.13.0 (HIVE-4485)
--numberFormat=[pattern]
Format numbers using a DecimalFormat pattern.
Usage: beeline --numberFormat="#,###,##0.00"
--outputformat=[table/vertical/csv/tsv/dsv/csv2/tsv2]
Format mode for result display. Default is table. See Separated-Value Output Formats below for description of recommended sv options.
Usage: beeline --outputformat=tsv
Version: dsv/csv2/tsv2 added in 0.14.0 (HIVE-8615)
--showHeader=[true/false]
Show column names in query results (true) or not (false). Default is true.
Usage: beeline --showHeader=false
--showNestedErrs=[true/false]
Display nested errors. Default is false.
Usage: beeline --showNestedErrs=true
--showWarnings=[true/false]
Display warnings that are reported on the connection after issuing any HiveQL commands.
Default is false.
Usage: beeline --showWarnings=true
--silent=[true/false]
Reduce the amount of informational messages displayed (true) or not (false). It also stops displaying the log messages for the query from HiveServer2 (Hive 0.14 and later). Default is false.
Usage: beeline --silent=true
--truncateTable=[true/false]
If true, truncates table column in the console when it exceeds console length.
Version: 0.14.0 (HIVE-6928)
--verbose=[true/false]
Show verbose error messages and debug information (true) or do not show (false).
Default is false.
Usage: beeline --verbose=true
-d <driver class>
The driver class to use.
Usage: beeline -d driver_class
-e <query>
Query that should be executed. Double or single quotes enclose the query string. This option can be specified multiple times.
Usage: beeline -e "query_string"
Icon
Only a single command per -e option is supported. You can't provide multiple semicolon separated commands. Use the -e option multiple times if you want to achieve this.
Bug fix (null pointer exception): 0.13.0 (HIVE-5765)
Bug to be fixed (running -e in background): workaround available (HIVE-6758)
Bug fix (--headerInterval not honored): 0.14.0 (HIVE-7647)
-f <file>
Script file that should be executed.
Usage: beeline -f filepath
Version: 0.12.0 (HIVE-4268)
Note: If the script contains tabs, query compilation fails in version 0.12.0. This bug is fixed in version 0.13.0 (HIVE-6359).
Bug to be fixed (running -f in background): workaround available (HIVE-6758)
-n <username>
The username to connect as.
Usage: beeline -n valid_user
-p <password>
The password to connect as.
Usage: beeline -p valid_password
-u <database URL>
The JDBC URL to connect to.
Usage: beeline -u db_URL