mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-24 00:22:29 +00:00
67c2e50331
* update presentations * CLICKHOUSE-2936: redirect from clickhouse.yandex.ru and clickhouse.yandex.com * update submodule * lost files * CLICKHOUSE-2981: prefer sphinx docs over original reference * CLICKHOUSE-2981: docs styles more similar to main website + add flags to switch language links * update presentations * Less confusing directory structure (docs -> doc/reference/) * Minify sphinx docs too * Website release script: fail fast + pass docker hash on deploy * Do not underline links in docs * shorter * cleanup docker images * tune nginx config * CLICKHOUSE-3043: get rid of habrastorage links * Lost translation * CLICKHOUSE-2936: temporary client-side redirect * behaves weird in test * put redirect back * CLICKHOUSE-3047: copy docs txts to public too * move to proper file * remove old pages to avoid confusion * Remove reference redirect warning for now * Refresh README.md * Yellow buttons in docs * Use svg flags instead of unicode ones in docs * fix test website instance * Put flags to separate files * wrong flag * Copy Yandex.Metrica introduction from main page to docs * Yet another home page structure change, couple new blocks (CLICKHOUSE-3045) * Update Contacts section * CLICKHOUSE-2849: more detailed legal information * CLICKHOUSE-2978 preparation - split by files * More changes in Contacts block * Tune texts on index page * update presentations * One more benchmark * Add usage sections to index page, adapted from slides * Get the roadmap started, based on slides from last ClickHouse Meetup * CLICKHOUSE-2977: some rendering tuning * Get rid of excessive section in the end of getting started * Make headers linkable * CLICKHOUSE-2981: links to editing reference - https://github.com/yandex/ClickHouse/issues/849 * CLICKHOUSE-2981: fix mobile styles in docs * Ban crawling of duplicating docs * Open some external links in new tab * Ban old docs too * Lots of trivial fixes in english docs * Lots of trivial fixes in russian docs * Remove getting started copies in markdown * Add Yandex.Webmaster * Fix some sphinx warnings * More warnings fixed in english docs * More sphinx warnings fixed * Add code-block:: text * More code-block:: text * These headers look not that well * Better switch between documentation languages * merge use_case.rst into ya_metrika_task.rst * Edit the agg_functions.rst texts * Add lost empty lines * Lost blank lines * Add new logo sizes * update presentations * Next step in migrating to new documentation * Fix all warnings in en reference * Fix all warnings in ru reference * Re-arrange existing reference * Move operation tips to main reference * Fix typos noticed by milovidov@ * Get rid of zookeeper.md * Looks like duplicate of tutorial.html * Fix some mess with html tags in tutorial * No idea why nobody noticed this before, but it was completely not clear whet to get the data * Match code block styling between main and tutorial pages (in favor of the latter) * Get rid of some copypaste in tutorial * Normalize header styles * Move example_datasets to sphinx * Move presentations submodule to website * Move and update README.md * No point in duplicating articles from habrahabr here * Move development-related docs as is for now * doc/reference/ -> docs/ (to match the URL on website) * Adapt links to match the previous commit * Adapt development docs to rst (still lacks translation and strikethrough support) * clean on release * blacklist presentations in gulp * strikethrough support in sphinx * just copy development folder for now * fix weird introduction in style article * Style guide translation (WIP) * Finish style guide translation to English * gulp clean separately * Update year in LICENSE * Initial CONTRIBUTING.md * Fix remaining links to old docs in tutorial * Some tutorial fixes * Typo * Another typo * Update list of authors from yandex-team accoding to git log
102 lines
6.0 KiB
ReStructuredText
102 lines
6.0 KiB
ReStructuredText
Command-line client
|
|
-------------------
|
|
To work for command line you can use ``clickhouse-client``:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ clickhouse-client
|
|
ClickHouse client version 0.0.26176.
|
|
Connecting to localhost:9000.
|
|
Connected to ClickHouse server version 0.0.26176.
|
|
|
|
:) SELECT 1
|
|
|
|
|
|
The ``clickhouse-client`` program accepts the following parameters, which are all optional:
|
|
|
|
``--host, -h`` - server name, by defaul - localhost.
|
|
You can use either the name or the IPv4 or IPv6 address.
|
|
|
|
``--port`` - The port to connect to, by default - 9000.
|
|
Note that the HTTP interface and the native interface use different ports.
|
|
|
|
``--user, -u`` - The username, by default - default.
|
|
|
|
``--password`` - The password, by default - empty string.
|
|
|
|
``--query, -q`` - Query to process when using non-interactive mode.
|
|
|
|
``--database, -d`` - Select the current default database, by default - the current DB from the server settings (by default, the 'default' DB).
|
|
|
|
``--multiline, -m`` - If specified, allow multiline queries (do not send request on Enter).
|
|
|
|
``--multiquery, -n`` - If specified, allow processing multiple queries separated by semicolons.
|
|
Only works in non-interactive mode.
|
|
|
|
``--format, -f`` - Use the specified default format to output the result.
|
|
``--vertical, -E`` - If specified, use the Vertical format by default to output the result. This is the same as '--format=Vertical'. In this format, each value is printed on a separate line, which is helpful when displaying wide tables.
|
|
``--time, -t`` - If specified, print the query execution time to 'stderr' in non-interactive mode.
|
|
``--stacktrace`` - If specified, also prints the stack trace if an exception occurs.
|
|
``--config-file`` - Name of the configuration file that has additional settings or changed defaults for the settings listed above.
|
|
By default, files are searched for in this order:
|
|
|
|
.. code-block:: text
|
|
|
|
./clickhouse-client.xml
|
|
~/./clickhouse-client/config.xml
|
|
/etc/clickhouse-client/config.xml
|
|
|
|
Settings are only taken from the first file found.
|
|
|
|
You can also specify any settings that will be used for processing queries. For example, ``clickhouse-client --max_threads=1``. For more information, see the section "Settings".
|
|
|
|
The client can be used in interactive and non-interactive (batch) mode.
|
|
To use batch mode, specify the 'query' parameter, or send data to 'stdin' (it verifies that 'stdin' is not a terminal), or both.
|
|
Similar to the HTTP interface, when using the 'query' parameter and sending data to 'stdin', the request is a concatenation of the 'query' parameter, a line break, and the data in 'stdin'. This is convenient for large INSERT queries.
|
|
|
|
Examples for insert data via clickhouse-client:
|
|
|
|
.. code-block:: bash
|
|
|
|
echo -ne "1, 'some text', '2016-08-14 00:00:00'\n2, 'some more text', '2016-08-14 00:00:01'" | clickhouse-client --database=test --query="INSERT INTO test FORMAT CSV";
|
|
|
|
cat <<_EOF | clickhouse-client --database=test --query="INSERT INTO test FORMAT CSV";
|
|
3, 'some text', '2016-08-14 00:00:00'
|
|
4, 'some more text', '2016-08-14 00:00:01'
|
|
_EOF
|
|
|
|
cat file.csv | clickhouse-client --database=test --query="INSERT INTO test FORMAT CSV";
|
|
|
|
|
|
In batch mode, the default data format is TabSeparated. You can set the format in the FORMAT clause of the query.
|
|
|
|
By default, you can only process a single query in batch mode. To make multiple queries from a "script," use the 'multiquery' parameter. This works for all queries except INSERT. Query results are output consecutively without additional separators.
|
|
Similarly, to process a large number of queries, you can run 'clickhouse-client' for each query. Note that it may take tens of milliseconds to launch the 'clickhouse-client' program.
|
|
|
|
In interactive mode, you get a command line where you can enter queries.
|
|
|
|
If 'multiline' is not specified (the default):
|
|
To run a query, press Enter. The semicolon is not necessary at the end of the query. To enter a multiline query, enter a backslash ``\`` before the line break - after you press Enter, you will be asked to enter the next line of the query.
|
|
|
|
If 'multiline' is specified:
|
|
To run a query, end it with a semicolon and press Enter. If the semicolon was omitted at the end of the entered line, you will be asked to enter the next line of the query.
|
|
|
|
You can specify ``\G`` instead of or after the semicolon. This indicates using Vertical format. In this format, each value is printed on a separate line, which is convenient for wide tables. This unusual feature was added for compatibility with the MySQL CLI.
|
|
|
|
The command line is based on 'readline' (and 'history') (or 'libedit', or even nothing, depending on build). In other words, it uses the familiar keyboard shortcuts and keeps a history. The history is written to /.clickhouse-client-history.
|
|
|
|
By default, the format used is PrettyCompact. You can change the format in the FORMAT clause of the query, or by specifying '\G' at the end of the query, using the '--format' or '--vertical' argument in the command line, or using the client configuration file.
|
|
|
|
To exit the client, press Ctrl+D (or Ctrl+C), or enter one of the following :
|
|
"exit", "quit", "logout", "учше", "йгше", "дщпщге", "exit;", "quit;", "logout;", "учшеж", "йгшеж", "дщпщгеж", "q", "й", "\q", "\Q", ":q", "\й", "\Й", "Жй"
|
|
|
|
When processing a query, the client shows:
|
|
#. Progress, which is updated no more than 10 times per second (by default). For quick queries, the progress might not have time to be displayed.
|
|
#. The formatted query after parsing, for debugging.
|
|
#. The result in the specified format.
|
|
#. The number of lines in the result, the time passed, and the average speed of query processing.
|
|
|
|
To cancel a lengthy query, press Ctrl+C. However, you will still need to wait a little for the server to abort the request. It is not possible to cancel a query at certain stages. If you don't wait and press Ctrl+C a second time, the client will exit.
|
|
|
|
The command-line client allows passing external data (external temporary tables) for querying. For more information, see the section "External data for request processing".
|