Timescale Cloud:性能、规模、企业级

自托管产品

MST

psql 是一个基于终端的 PostgreSQL 前端,它允许您交互式地输入查询、将其发送到 Postgres 并查看查询结果。

本页将向您展示如何使用 psql 命令行工具与您的 Timescale 云服务进行交互。

要遵循本页中的步骤

在许多操作系统中,psql 默认已安装。要使用本页描述的功能,最佳实践是使用最新版本的 psql。要检查您系统上运行的版本

如果您已经安装了最新版本的 psql,请继续阅读 连接到您的服务 部分。

如果没有现有安装,请执行以下步骤来安装 psql

要使用 psql 连接到您的服务,您需要连接详情。请参阅 查找您的连接详情

使用以下任一方式连接到您的服务

  • 参数标志

    psql -h <HOSTNAME> -p <PORT> -U <USERNAME> -W -d <DATABASENAME>
  • 服务 URL

    psql "postgres://<USERNAME>@<HOSTNAME>:<PORT>/<DATABASENAME>?sslmode=require"

    系统会提示您提供密码。

  • 已包含密码且已启用 更严格 SSL 模式 的服务 URL

    psql "postgres://<USERNAME>:<PASSWORD>@<HOSTNAME>:<PORT>/<DATABASENAME>?sslmode=verify-full"

当您开始使用 psql 时,这些是您最可能频繁使用的命令

命令描述
\c <数据库名称>连接到新数据库
\d <表名称>显示表的详细信息
\df列出当前数据库中的函数
\df+列出所有函数的更多详细信息
\di列出所有表中的所有索引
\dn列出当前数据库中的所有模式
\dt列出可用表
\du列出 PostgreSQL 数据库角色
\dv列出当前模式中的视图
\dv+列出所有视图的更多详细信息
\dx显示所有已安装的扩展
ef <函数名称>编辑函数
\h显示 SQL 命令语法帮助
\l列出可用数据库
\password <用户名>更改用户的密码
\q退出 psql
\set显示系统变量列表
\timing显示查询执行时长
\x显示展开的查询结果
\?列出所有 psql 斜杠命令

有关 psql 命令的更多信息,请参阅 Timescale psql 速查表psql 文档

当您在 psql 中运行查询时,结果默认显示在控制台中。如果您的查询结果很多,您可能希望将结果保存为逗号分隔的 .csv 文件。您可以使用 COPY 命令执行此操作。例如

\copy (SELECT * FROM ...) TO '/tmp/output.csv' (format CSV);

此命令将查询结果发送到 /tmp/ 目录中名为 output.csv 的新文件。您可以使用任何电子表格程序打开该文件。

要在 psql 中运行多行查询,请使用 EOF 分隔符。例如

psql -d $TARGET -f -v hypertable=<hypertable> - <<'EOF'
SELECT public.alter_job(j.id, scheduled=>true)
FROM _timescaledb_config.bgw_job j
JOIN _timescaledb_catalog.hypertable h ON h.id = j.hypertable_id
WHERE j.proc_schema IN ('_timescaledb_internal', '_timescaledb_functions')
AND j.proc_name = 'policy_columnstore'
AND j.id >= 1000
AND format('%I.%I', h.schema_name, h.table_name)::text::regclass = :'hypertable'::text::regclass;
EOF

有时,查询可能很长,您第一次输入时可能会出错。如果您在长查询中犯了错误,无需重新输入,您可以使用内置的文本编辑器,它基于 Vim。使用 \e 命令启动查询编辑器。您之前的查询将加载到编辑器中。完成更改后,按 Esc,然后输入 :wq 保存更改,并返回到命令提示符。按 访问已编辑的查询,然后按 Enter 运行它。

关键词

此页面有问题?报告问题 或 编辑此页面 在 GitHub。