在本教程中,我们将学习什么是 SnowSQL,如何在 Linux 和 Windows 中安装 SnowSQL,最后如何使用 SnowSQL 连接到 Snowflake。
在开始使用 SnowSQL 之前,我建议您先查看以下链接,以了解 Snowflake 到底是什么以及如何在 Snowflake 中创建免费试用帐户。
- 雪花数据仓库简介
1. 什么是 SnowSQL?
SnowSQL 是 Snowflake 的 CLI 客户端,可用于与 Snowflake 交互并执行 DDL 和 DML 操作,以及数据加载和卸载操作。
2、在Linux中安装SnowSQL
我们已经创建了免费试用帐户,打开 Snowflake UI 下载 SnowSQL 安装程序。 以下是我们免费试用帐户的 URL。
- https://uz64318.southeast-asia.azure.snowflakecomputing.com/console#/internal/worksheet
打开您的 Web 浏览器并导航到 URL 以访问 Snowflake WebUI。 每个帐户的 URL 都是唯一的。
在 Snowflake WebUI 中,单击“帮助”并选择“下载”选项。
您可以进入 Snowflake Repository 下载 SnowSQL 包。 否则,您可以下载 SnowSQL rpm
从以下存储库中打包。
右键单击适用于 Linux 的最新 SnowSQL CLI 客户端链接,然后单击“复制链接地址”。

采用 wget
下载 SnowSQL CLI rpm 文件。
# wget https://sfc-repo.snowflakecomputing.com/snowsql/bootstrap/1.2/linux_x86_64/snowflake-snowsql-1.2.21-1.x86_64.rpm
使用以下命令安装 SnowSQL root
用户。
# rpm -i snowflake-snowsql-1.2.21-1.x86_64.rpm
安装后,通过检查 SnowSQL 的版本来验证安装。
# snowsql -v

您可以通过运行以下命令显示 SnowSQL 客户端的帮助部分:
# snowsql

3. 在 Linux 中使用 SnowSQL 连接 Snowflake
使用以下语法从终端窗口连接雪花:
# snowsql -a <account-name> -u <username>
您可以从您的帐户唯一的 URL 中获取帐户名称。 帐户名称由唯一的帐号和 Cloud 地区。

正如您在上面的屏幕截图中看到的,这是我的 Snowflake 网址、Snowflake 的帐户和用户名。
- 账户网址: https://uz64318.southeast-asia.azure.snowflakecomputing.com/console#/internal/worksheet
- 帐户名称: uz64318.southeast-asia.azure
- 用户名: OSTECHNIX
使用以下命令连接雪花。
# snowsql -a uz64318.southeast-asia.azure -u OSTECHNIX
您将被要求输入您的帐户密码。
Password: * SnowSQL * v1.2.21 Type SQL statements or !help OSTECHNIX#[email protected](no database).(no schema)>

笔记: 在本文中,我们使用 Powershell 作为 CLI 进行进一步演示。 在实时工业实践中,大多数最终用户/业务用户将拥有 Windows 机器。 因此,大多数用例将依赖 Powershell。 Powershell 和 Linux 上的所有 SnowSQL 查询/语法都相同 bash.
4.在Windows中安装SnowSQL
下载 SnowSQL CLI 客户端同上。 在 Snowflake WebUI 中,单击“帮助”并选择“下载”选项。

单击雪花存储库链接。

单击 Snowflake 存储库后,您将被定向到 SnowSQL 存储库页面,您可以在其中下载安装程序。 在这里,我下载了适用于 Windows 操作系统的最新版本的安装程序。
您可以使用以下 URL 根据您的操作系统型号下载安装程序。
- https://sfc-repo.snowflakecomputing.com/snowsql/bootstrap/index.html

下载Installer包后,直接执行安装即可。

安装后,您将获得以下页面,您可以在其中获取有关如何连接 Snowflake 帐户的说明。

打开一个新的终端 (cmd) 或 Powershell。 这里我使用了推荐的 Powershell,因为 Powershell 是 Windows 中更高级的 cmd 版本。
以管理员身份打开 Windows Powershell。

您可以使用以下命令获取 snowsql 的帮助部分:
PS C:WINDOWSsystem32> snowsql

您可以检查 SnowSQL 的版本以确保安装成功。
PS C:WINDOWSsystem32> snowsql -v
版本:1.2.21
PS C:WINDOWSsystem32>
5. 使用 SnowSQL CLI 客户端访问 Snowflake
使用以下语法从 Powershell 连接 Snowflake,就像我们在 Linux 中所做的那样 bash 贝壳。
snowsql -a <your_account_name> -u <username>
在这里,我的帐户名称是 uz64318.southeast-asia.azure 和用户名是 OSTECHNIX.
使用以下字符串连接雪花:
PS C:WINDOWSsystem32> snowsql -a uz64318.southeast-asia.azure -u OSTECHNIX
您将被要求输入您的帐户密码。
Password: * SnowSQL * v1.2.21 Type SQL statements or !help OSTECHNIX#[email protected](no database).(no schema)>

Snowflake 已由用户 OSTECHNIX 通过 SnowSQL 连接。 默认情况下,它将连接到默认数据仓库 ‘COMPUTE_WH’.
您可以在连接雪花时在连接字符串中指定数据库名称和架构名称。
snowsql -a uz64318.southeast-asia.azure -u OSTECHNIX -d <databaseName> -s <schemaName>
使用以下命令检查可用的数据库。 将有几个默认数据库用于演示目的。
OSTECHNIX#[email protected](no database).(no schema)>show databases;

使用以下命令连接特定数据库。
OSTECHNIX#[email protected](no database).(no schema)>use SNOWFLAKE_SAMPLE_DATA ; +----------------------------------+ | status | |----------------------------------| | Statement executed successfully. | +----------------------------------+ 1 Row(s) produced. Time Elapsed: 0.562s

检查数据库下的可用模式 “SNOWFLAKE_SAMPLE_DATA”. 当我们连接到这个数据库时,它将反映在 shell 中。
OSTECHNIX#[email protected]SNOWFLAKE_SAMPLE_DATA.(no schema)> show SCHEMAS;

使用以下命令连接任何特定架构。
OSTECHNIX#[email protected]_SAMPLE_DATA.(no schema)>use SNOWFLAKE_SAMPLE_DATA.WEATHER;

现在用户“OSTECHNIX”与仓库“COMPUTE_WH”、数据库“SNOWFLAKE_SAMPLE_DATA”和模式“WEATHER”连接。
6. 创建数据仓库
仓库是 Snowflake 中的计算单元。 请参考我们之前的 文章 对雪花中的仓库及其大小与定价模型有概念性的了解。
在 Snowflake 中,大部分 DDL 命令可以通过三种方式执行:
- 雪SQL,
- 仪表板中的工作表,
- 在 Web 用户界面中。
6.1。 使用 SnowSQL 创建数据仓库
让我们创建一个名为“ostech_demo”的新仓库。
为此,请运行以下命令:
OSTECHNIX#[email protected]_SAMPLE_DATA.WEATHER>create or replace warehouse ostech_demo with warehouse_size="X-SMALL" auto_suspend = 180 auto_resume = true initially_suspended = true;

仓库属性:
- 仓库尺寸 – 仓库大小
- 自动暂停 – 仓库将在定义的秒数后暂停
- 自动恢复 – 真 | False:如果该属性设置为True,则提交SQL语句时会自动启动仓库。
- Initially_suspended – 真 | False:如果此属性设置为 True,则仓库在创建时处于暂停状态
您可以使用“显示”命令验证创建的仓库。
OSTECHNIX#[email protected]_SAMPLE_DATA.WEATHER>show WAREHOUSES;

此外,您可以在 WebUI 中进行验证。 在 Snowflake WebUI 中,单击 仓库 选项。

6.2. 在工作表中创建数据仓库
同样的“创建”命令也可以在雪花仪表板的工作表中运行。 此工作表是 Snowflake 附带的内置 SQL 客户端。
使用 Worksheet 创建另一个仓库“ostech_demo_2”。
create or replace warehouse ostech_demo_2 with warehouse_size="X-SMALL" auto_suspend = 180 auto_resume = true initially_suspended = true;

验证创建的仓库:

6.3. 从 WebUI 创建数据仓库
您还可以使用仓库选项卡下的“创建”选项创建仓库。

Enter 参数,然后单击“完成”。

新仓库已创建。 在仓库选项卡下验证它。

结论
在本文中,我们讨论了如何在 Linux 和 Windows 中安装 SnowSQL(Snowflake 的 CLI),以及如何使用 SnowSQL 连接 Snowflake,最后讨论了如何通过 3 种不同的方法创建 Warehouse。
我们将在接下来的文章中了解其他数据库管理活动,如数据库/表创建、数据加载、用户管理、访问管理。
资源: