psql 命令行工具广泛用于与 PostgreSQL 或 Timescale 实例交互,它适用于所有操作系统。 Timescale 文档中的大多数说明假设您正在使用 psql

要使用 psql 连接到您的数据库,您需要 PostgreSQL 服务器的连接详细信息。 有关如何检索连接详细信息的更多信息,请参阅关于连接部分。

您可以使用 psql 连接到您的数据库,有两种不同的方法。

您可以使用参数标志提供详细信息,例如

psql -h <HOSTNAME> -p <PORT> -U <USERNAME> -W -d <DATABASENAME>

或者,您可以使用服务 URL 提供详细信息,例如

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

如果您将 Timescale 服务配置为使用SSL 模式进行连接,请使用

psql "postgres://tsdbadmin@<SERVICE_URL_WITH_PORT>/tsdb?sslmode=verify-full"

当您运行这些命令之一时,系统会提示您输入密码。如果您不想被提示,可以将密码直接提供在服务 URL 中,例如

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

当您开始使用 psql 时,这些命令是您最常使用的命令

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

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

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

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

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

关键词

在此页面上发现问题?报告问题 或 编辑此页面 在 GitHub 上。