问题标签 [postgresql-13]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
postgresql - PostgreSQL COPY 管道输出到 gzip 然后到 STDOUT
以下命令运行良好
但是,以下不是:
为什么我有COPY 3
这个命令的输出?我希望输出将是压缩的 CSV 字符串,通过gzip
.
下面的命令有效,例如:
如何制作一个直接将结果通过管道传输到gzip
并将压缩字符串发送到的 SQL 命令STDOUT
?
postgresql - psql:/usr/pgsql-11/lib/libpq.so.5:没有可用的版本信息
使用 Fedora33 rn,尝试安装 Postgresql,成功初始化第一个数据库,没有任何错误。还安装了 pgadmin4 但无法创建服务器。
尝试了这个命令并得到:`
尝试按照提到的重新安装和pg_ctl: error while loading shared libraries: libpq.so.5但也没有工作。
sql - 在 postgres 查询中对表“t1”的 FROM 子句条目的引用无效
我正在尝试执行这样的查询...
&我收到这样的错误...
该错误消息完全有道理,但我只想知道是否可以将 't1' 的值与保持相同结构的 't2' 匹配?
database - 在 postgresql 中从不同来源导入批量 JSON 数据的最有效方法?
我需要从数千个 URL 导入数据,以下是数据示例:
[{"date":"20201006T120000Z","uri":"secret","val":"1765.756"},{"date":"20201006T120500Z","uri":"secret","val":"2015.09258 "},{"date":"20201006T121000Z","uri":"secret","val":"2283.0885"}]
由于 COPY 不支持 JSON 格式,我一直使用它从一些 URL 导入数据:
但它效率低下,因为它为每个导入创建一个表,并且一次导入一个 url。我想知道是否可以(通过工具、脚本或命令)读取包含所有 URL 的文件并将其数据复制到数据库中。
windows - Postgresql 13 64 位和 SSL
我一直使用带有 SSL 的 10 版 32 位 Postgresql,今天我在新的 Windows 服务器上安装了 13 版 64 位,如果 ssl 处于活动状态,该服务将不再启动。我像往常一样复制了 DATA 文件夹中的证书文件 server.crt 和 server.key 并像往常一样设置了 postgresql.conf 文件,但是服务没有启动,我在日志中没有任何用处. 如果我不激活 SSL,一切都很好。这是配置的 ssl 部分:
ssl - 无法建立到 PostgreSQL 的 SSL 连接
我尝试按照本指南进行操作,但无法连接到服务器。我在下面列出了我的服务器/计算机信息。但是,出于安全原因,我没有包含我的真实域名或用户名。理想情况下,我想通过 ssl 进行连接,而无需在客户端存储密钥。
远程服务器
操作系统:CentOS 7
PostgreSQL 版本:13
配置:
certbot --apache -d domain.com -d www.domain.com
cd /var/lib/pgsql/13/data
vi postgresql.conf
- 我取消注释和/或更新了以下几行:
vi pg_hba.conf
- 我添加了以下行:
cd /etc/letsencrypt/renewal-hooks/deploy
vi postgresql.deploy
- 我添加了以下几行:
chmod +x postgresql.deploy
sh postgresql.deploy
systemctl restart postgresql-13
工作电脑
操作系统:Windows 7 64 位
PostgreSQL 版本:13
配置:
- 我从该站点下载了 PostgreSQL 13 二进制 Win x86-64 文件并将其解压缩到本地文件夹中。
- 我打开命令提示符并输入以下内容:
cd C:\Users\username\PostgreSQL\pgsql\bin
psql -d postgres -h domain.com -U username
- 输入此命令后,光标移动到下一行的开头,但没有任何反应。我等了很长时间,但屏幕上没有显示其他消息。
故障排除
- 服务器
- 我注释掉了
postgresql.conf
文件中的所有 ssl 选项。 - 我在文件中更改
hostssl
为。host
pg_hba.conf
systemctl restart postgresql-13
- 我注释掉了
- 电脑命令提示符
psql -d postgres -h domain.com -U username
- 这次我被提示输入密码并成功登录。
问题
为了让我通过 ssl 连接,还需要哪些其他步骤?
postgresql - 将 Postgresql DB 转储从远程服务器复制到本地
我想从远程服务器获取数据库转储,然后将此转储复制到我的本地。我尝试了几个命令,但没有奏效。
最后我尝试了下面的命令;
我成功地获取了数据库并尝试从 Pgadmin 恢复,它给出了;
但是此时我不能使用 psql,我必须使用 Pgadmin 并且不确定我是否能够成功地将数据库转储到我的本地。我的意思是我无法通过还原进行验证。
如何将数据库转储从远程服务器转移到本地?
谢谢!
go - 在gorm中重命名Many2Many关系上的列
我有两个模型使用 GORM 和 Postgres 13 绑定到同一个表,一个显示用于管理员的额外属性(并创建表结构),另一个模型用于在 GraphQL 中公开简化版本。使用 GORM 建立多对多关系。它们共享相同的表products和关系表product_countries。
我添加了这段代码,以便它们使用同一个表,到目前为止,所有 CRUD 操作都可以完美运行。
但是当我想要 .Preload("Countries") 时,我收到以下错误,这是有道理的,因为 gorm 自己将表重命名为products_admin。
ERROR: column product_countries.product_admin_id does not exist (SQLSTATE 42703)
有没有办法覆盖这个重命名或用某种标签指定它?我需要它成为product_id。
postgresql - Postgres 拒绝创建数据库 - 为什么?
我正在尝试使用以下命令在 PostgreSQL 中创建一个数据库:
该命令没有错误。但是当我列出数据库时,新数据库不存在:
如果我尝试更改为该新数据库,它会告诉我它不存在:
CREATE DATABASE
我也用命令试过这个。我得到了同样的结果:
在 PGAdmin4 中执行相同的命令,我确实得到了一个错误:
我在 PostgreSQL 13。为什么 Postgres 拒绝创建这个数据库?
postgresql - PostgreSQL 13 - 改进大表数据聚合
我有一个巨大的数据库(当前大小约为 900GB,新数据仍然存在)Year_month
由currency
. 问题是当我尝试从整个分区中获取聚合时它会变慢。这是一份报告,因此会经常被查询。我要聚合的当前分区大小:7.829.230 行。每个子分区都是相似的。表架构(匿名):
聚合整个分区的示例查询(并非使用所有字段)(此查询可能有更多 WHERE 条件,但这是最坏的情况)
解释:
服务器规格:
- AMD 64 线程
- 315GB 内存
- 6xSSD RAID 10 Postgres 配置:
[2021-04-27 更新]
我已经更新了服务器配置:
对于整个查询,我有一个关于生产数据的示例(更长 - 所有表字段的聚合)不能更快地工作并且不使用并行(大选择语句?)。但是当我减少 SELECT 上的聚合数量时,它开始使用并行并提高了战利品性能。但是当我将查询恢复为原始查询时,它不使用并行。