提供常用 Postgres 内省查询快捷方式的命令。 此软件包是 heroku-pg-extras 的移植。
大部分命令都已移植,除了一些需要特殊数据库配置或移植方式不明确的命令。
通过 mint
mint install finestructure/swift-pg-extras
或者克隆存储库,并像其他 Swift 命令行实用程序一样运行/安装它。
获取所有可用命令的列表
pg-extras --help
示例命令
pg-extras cache-hit -c .credentials
+----------------+---------------------+
| Name | Ratio |
+----------------+---------------------+
| index hit rate | 0.9993522581171029 |
| table hit rate | 0.9993522581171029 |
+----------------+---------------------+
其中 .credentials
包含您的 Postgres 数据库连接详细信息
{
"host": "localhost",
"port": 5432,
"username": "foo",
"database": "bar",
"password": "pass"
}
凭据文件支持一个可选字段 tls
,用于 disable
或 require
TLS
{
...
"tls": "require"
}
create extension pg_stat_statements
并通过 shared_preload_libraries 加载 pg_stat_statementsERROR: unrecognized configuration parameter "extwlist.extensions" (错误:无法识别的配置参数 "extwlist.extensions")
postgres_fdw
设置create extension pg_stat_statements
并通过 shared_preload_libraries 加载 pg_stat_statements原始项目需要安装 heroku
,并且我发现另一个项目使其独立,可以通过 npm
安装。
我的设置不包括运行 JavaScript 工具,所以拥有一个 Swift 二进制文件对我个人来说更容易,我怀疑对其他人来说也是如此。
此外,我认为该软件包可以通过某种方式成为一个模块(通过使用它的 vapor-pg-extras
软件包),你可以将其加载到 Vapor 项目中,这样你就可以自动获得有关 Postgres 数据库的更详细的性能指标。为此,将基础模块作为 Swift 软件包会很有用。