Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Důležité
Rozhraní příkazového řádku SQL Databricks není v aktivním vývoji.
Poznámka:
Tento článek se zabývá rozhraním příkazového řádku SQL Databricks, které poskytujeme tak, jak je, a Databricks ho nepodporuje prostřednictvím kanálů technické podpory zákazníků. Dotazy a žádosti o funkce je možné sdělit na stránce Problémy v úložišti databricks/databricks-sql-cli na GitHubu.
Rozhraní příkazového řádku Databricks SQL (Databricks SQL CLI) umožňuje spouštět SQL dotazy na vašich stávajících datových skladech Databricks SQL přímo z terminálu nebo příkazového řádku Windows, místo z nástrojů, jako je editor Databricks SQL nebo notebooky Azure Databricks. Z příkazového řádku získáte funkce produktivity, jako jsou návrhy a zvýraznění syntaxe.
Požadavky
- Alespoň jeden Databricks SQL sklad. Vytvořte sklad, pokud ho ještě nemáte.
-
Python 3.7 nebo vyšší Pokud chcete zkontrolovat, jestli máte nainstalovaný Python, spusťte příkaz
python --versionz terminálu nebo příkazového řádku. (V některých systémech možná budete muset místo toho zadatpython3.) Nainstalujte Python, pokud ho ještě nemáte nainstalovaný. -
pip, instalační program balíčku pro Python. Novější verze Pythonu se instalují ve výchozím nastavení. Pokud chcete zkontrolovat, jestli jste nainstalovali
pip, spusťte příkazpip --versionz terminálu nebo příkazového řádku. (V některých systémech možná budete muset místo toho zadatpip3.) Nainstalujte pip, pokud ho ještě nemáte nainstalovaný. - (Volitelné) Nástroj pro vytváření a správu virtuálních prostředí Pythonu, jako je například venv. Virtuální prostředí pomáhají zajistit, abyste společně používali správné verze Pythonu a rozhraní příkazového řádku SQL Databricks. Nastavení a používání virtuálních prostředí je mimo rozsah tohoto článku. Další informace naleznete v tématu Vytváření virtuálních prostředí.
Nainstalujte rozhraní příkazového řádku Databricks SQL
Po splnění požadavků nainstalujte balíček Rozhraní příkazového řádku SQL Databricks z indexu balíčků Pythonu (PyPI). Pomocí pip můžete nainstalovat balíček Databricks SQL CLI z PyPI spuštěním jednoho z následujících příkazů pomocí pip.
pip install databricks-sql-cli
# Or...
python -m pip install databricks-sql-cli
Pokud chcete upgradovat dříve nainstalovanou verzi rozhraní příkazového řádku SQL Databricks, spusťte pip jeden z následujících příkazů.
pip install databricks-sql-cli --upgrade
# Or...
python -m pip install databricks-sql-cli --upgrade
Pokud chcete zkontrolovat nainstalovanou verzi rozhraní příkazového řádku SQL Databricks, spusťte pip jedním z následujících příkazů.
pip show databricks-sql-cli
# Or...
python -m pip show databricks-sql-cli
Ověřování
Pokud chcete provést ověření, musíte zadat rozhraní příkazového řádku SQL Databricks s podrobnostmi o připojení vašeho skladu. Konkrétně potřebujete hodnoty názvu hostitele serveru a HTTP cesty. Musíte také poskytnout Databricks SQL CLI se správnými autentizačními údaji.
Rozhraní příkazového řádku SQL Databricks (CLI) podporuje osobní přístupové tokeny Databricks (PATs). Pokud chcete použít ověřování PAT v Azure Databricks, musíte vytvořit osobní přístupový token. Podrobnosti o tomto procesu najdete v tématu Ověřování pomocí osobních přístupových tokenů Azure Databricks (starší verze).
Tokeny ID Microsoft Entra nejsou podporovány.
Tyto ověřovací informace můžete zadat do Rozhraní příkazového řádku SQL Databricks několika způsoby:
-
dbsqlclircV souboru nastavení ve výchozím umístění (nebo zadáním alternativního souboru nastavení pomocí možnosti--clircpři spuštění jakéhokoli příkazu s Databricks SQL CLI). Viz Soubor nastavení. - Nastavením proměnných prostředí
DBSQLCLI_HOST_NAME,DBSQLCLI_HTTP_PATHaDBSQLCLI_ACCESS_TOKENViz proměnné prostředí. - Při každém spuštění příkazu pomocí Rozhraní příkazového řádku SQL Databricks zadejte možnosti
--hostname,--http-patha--access-token. Viz možnosti příkazu.
Poznámka:
Soubor dbsqlclirc nastavení musí být k dispozici, i když nastavíte předchozí proměnné prostředí nebo zadáte předchozí možnosti příkazu nebo obojí.
Pokaždé, když spustíte Rozhraní příkazového řádku SQL Databricks, vyhledá podrobnosti o ověřování v následujícím pořadí a zastaví se, když najde první sadu podrobností:
- Možnosti
--hostname,--http-patha--access-token. - Proměnné prostředí
DBSQLCLI_HOST_NAME,DBSQLCLI_HTTP_PATHaDBSQLCLI_ACCESS_TOKEN. - Soubor
dbsqlclircnastavení ve výchozím umístění (nebo alternativní soubor nastavení určený možností--clirc).
Soubor nastavení
Pokud chcete použít soubor nastavení dbsqlclirc k poskytnutí rozhraní příkazového řádku Databricks SQL s podrobnostmi o ověřování pro datové skladiště SQL Databricks, spusťte rozhraní příkazového řádku poprvé následujícím způsobem:
dbsqlcli
Rozhraní příkazového řádku SQL Databricks pro vás vytvoří soubor nastavení na ~/.dbsqlcli/dbsqlclirc v systémech Unix, Linux a macOS, a na %HOMEDRIVE%%HOMEPATH%\.dbsqlcli\dbsqlclirc nebo %USERPROFILE%\.dbsqlcli\dbsqlclirc ve Windows. Přizpůsobení tohoto souboru:
K otevření a úpravě
dbsqlclircsouboru použijte textový editor.Posuňte se k následující části:
# [credentials] # host_name = "" # http_path = "" # access_token = ""Odeberte čtyři
#znaků a:- Vedle položky
host_namezadejte hodnotu názvu hostitele serveru vašeho skladu z požadavků mezi""znaky. - Vedle položky
http_pathzadejte hodnotu cesty HTTP vašeho skladu z požadavků mezi""znaky. - Vedle položky
access_tokenzadejte hodnotu osobního přístupového tokenu z požadavků mezi""znaky.
Příklad:
[credentials] host_name = "adb-12345678901234567.8.azuredatabricks.net" http_path = "/sql/1.0/warehouses/1abc2d3456e7f890a" access_token = "dapi12345678901234567890123456789012"- Vedle položky
Uložte soubor
dbsqlclirc.
Případně můžete místo použití dbsqlclirc souboru ve výchozím umístění zadat soubor v jiném umístění přidáním --clirc možnosti příkazu a cesty k alternativnímu souboru. Obsah alternativního souboru musí odpovídat předchozí syntaxi.
Proměnné prostředí
Pokud chcete použít proměnné prostředí DBSQLCLI_HOST_NAME, DBSQLCLI_HTTP_PATH a DBSQLCLI_ACCESS_TOKEN k poskytnutí autentizačních detailů pro SQL Databricks CLI pro váš SQL Databricks Warehouse, postupujte takto:
Unix, Linux a macOS
Pokud chcete nastavit proměnné prostředí pouze pro aktuální sezení terminálu, spusťte následující příkazy. Pokud chcete nastavit proměnné prostředí pro všechny relace terminálu, zadejte do spouštěcího souboru prostředí následující příkazy a restartujte terminál. V následujících příkazech nahraďte hodnotu:
-
DBSQLCLI_HOST_NAMEs hodnotou názvu hostitele serveru vašeho skladu z požadavků. -
DBSQLCLI_HTTP_PATHs hodnotou cesty HTTP vašeho skladu z požadavků. -
DBSQLCLI_ACCESS_TOKENs hodnotou vašeho osobního přístupového tokenu podle požadavků.
export DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
export DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
export DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"
Windows
Pokud chcete nastavit proměnné prostředí pouze pro aktuální příkazový řádek, spusťte následující příkazy a nahraďte zde uvedenou hodnotu:
-
DBSQLCLI_HOST_NAMEs hodnotou názvu hostitele serveru vašeho skladu z požadavků. -
DBSQLCLI_HTTP_PATHs hodnotou cesty HTTP vašeho skladu z požadavků. -
DBSQLCLI_ACCESS_TOKENs hodnotou vašeho osobního přístupového tokenu ze specifikací:
set DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
set DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
set DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"
Pokud chcete nastavit proměnné prostředí pro všechny relace příkazového řádku, spusťte následující příkazy a restartujte příkazový řádek a nahraďte hodnotu:
-
DBSQLCLI_HOST_NAMEs hodnotou názvu hostitele serveru vašeho skladu z požadavků. -
DBSQLCLI_HTTP_PATHs hodnotou cesty HTTP vašeho skladu z požadavků. -
DBSQLCLI_ACCESS_TOKENs hodnotou vašeho osobního přístupového tokenu podle požadavků.
setx DBSQLCLI_HOST_NAME "adb-12345678901234567.8.azuredatabricks.net"
setx DBSQLCLI_HTTP_PATH "/sql/1.0/warehouses/1abc2d3456e7f890a"
setx DBSQLCLI_ACCESS_TOKEN "dapi12345678901234567890123456789012"
Možnosti příkazů
Pokud chcete použít --hostname, --http-path, a --access-token možnosti k poskytnutí autentizačních údajů pro Databricks SQL CLI u Databricks SQL Warehouse, postupujte takto:
Při každém spuštění příkazu pomocí rozhraní příkazového řádku SQL Databricks postupujte následovně:
-
--hostnameZadejte možnost a hodnotu názvu hostitele serveru vašeho skladu z požadavků. -
--http-pathZadejte možnost a hodnotu cesty HTTP vašeho skladu z požadavků. -
--access-tokenZadejte možnost a hodnotu vašeho osobního přístupového tokenu z požadavků.
Příklad:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" \
--hostname "adb-12345678901234567.8.azuredatabricks.net" \
--http-path "/sql/1.0/warehouses/1abc2d3456e7f890a" \
--access-token "dapi12345678901234567890123456789012"
Zdroje dotazů
Rozhraní příkazového řádku SQL Databricks umožňuje spouštět dotazy následujícími způsoby:
- Z řetězce dotazu.
- Ze souboru.
- V přístupu známém jako REPL (čte-vyhodnocuje-tiskne smyčka). Tento přístup nabízí návrhy při psaní.
Řetězec dotazu
Pokud chcete spustit dotaz jako řetězec, použijte -e možnost následovanou dotazem reprezentovanou jako řetězec. Příklad:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2"
Výstup:
_c0,carat,cut,color,clarity,depth,table,price,x,y,z
1,0.23,Ideal,E,SI2,61.5,55,326,3.95,3.98,2.43
2,0.21,Premium,E,SI1,59.8,61,326,3.89,3.84,2.31
Pokud chcete přepnout výstupní formáty, použijte --table-format možnost spolu s hodnotou, například ascii pro formát tabulky ASCII, například:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" --table-format ascii
Výstup:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
Seznam dostupných hodnot výstupního formátu najdete v komentářích k table_format nastavení v dbsqlclirc souboru.
Soubor
Pokud chcete spustit soubor, který obsahuje SQL, použijte -e možnost následovanou cestou k .sql souboru. Příklad:
dbsqlcli -e my-query.sql
Obsah ukázkového my-query.sql souboru:
SELECT * FROM default.diamonds LIMIT 2;
Výstup:
_c0,carat,cut,color,clarity,depth,table,price,x,y,z
1,0.23,Ideal,E,SI2,61.5,55,326,3.95,3.98,2.43
2,0.21,Premium,E,SI1,59.8,61,326,3.89,3.84,2.31
Pokud chcete přepnout výstupní formáty, použijte --table-format možnost spolu s hodnotou, například ascii pro formát tabulky ASCII, například:
dbsqlcli -e my-query.sql --table-format ascii
Výstup:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
Seznam dostupných hodnot výstupního formátu najdete v komentářích k table_format nastavení v dbsqlclirc souboru.
REPL
Pokud chcete přejít do režimu REPL (read-evaluate-print), který je omezený na výchozí databázi, spusťte následující příkaz:
dbsqlcli
Můžete také zadat režim REPL vymezený na konkrétní databázi spuštěním následujícího příkazu:
dbsqlcli <database-name>
Příklad:
dbsqlcli default
Pokud chcete ukončit režim REPL, spusťte následující příkaz:
exit
V režimu REPL můžete použít následující znaky a klíče:
- Pomocí středníku (
;) ukončete čáru. - K přepnutí víceřádkového režimu použijte klávesu F3 .
- Pokud se návrhy dosud nezobrazují, použijte mezerník ke zobrazení návrhů na místě vložení.
- Pomocí šipek nahoru a dolů můžete procházet návrhy.
- Pomocí šipky doprava dokončete zvýrazněný návrh.
Příklad:
dbsqlcli default
hostname:default> SELECT * FROM diamonds LIMIT 2;
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
2 rows in set
Time: 0.703s
hostname:default> exit
Protokolování
Příkazový řádek Databricks SQL protokoluje zprávy do souboru ~/.dbsqlcli/app.log ve výchozím nastavení. Chcete-li změnit název nebo umístění tohoto souboru, změňte hodnotu log_file nastavení v dbsqlclircsouboru nastavení.
Ve výchozím nastavení se zprávy protokolují na INFO úrovni protokolu a níže. Pokud chcete změnit tuto úroveň protokolu, změňte hodnotu log_level nastavení v dbsqlclirc souboru nastavení. Mezi dostupné hodnoty úrovně protokolu patří CRITICAL, , ERRORWARNING, INFOa DEBUG jsou vyhodnoceny v daném pořadí.
NONE zakáže protokolování.