标签: postgresql

varchar(n) 大小?

varchar(5)当我在查询中使用时INSERT,这意味着表中的属性将在内存中占用5 个字节?(假设一个可打印字符占用一个字节)?

postgresql varchar storage memory database-internals

2
推荐指数
1
解决办法
6659
查看次数

InfluxDB 比 PostgreSQL 快吗

根据这篇文章,与 postgres(使用基于时间的索引)相比,influx 唯一真正的好处是空间的使用。PostgreSQL 的性能更高,具有时间索引。

那么为什么要使用 influx-db 而不是 postgresql 呢?

我从某人那里听说聚合函数的avg/count涌入速度更快,但在网上找不到任何支持这一点的结果。

postgresql performance influx-db

2
推荐指数
1
解决办法
2464
查看次数

错误:由于与恢复冲突而取消语句

我收到以下错误:

ERROR: canceling statement due to conflict with recovery.
Detail: User query might have needed to see row versions that must be removed.;
nested exception in org.postgresql.util.PSQLException:ERROR:canceling statement due to conflict with recovery.
Detail: User query might have needed to see row versions that must be removed.
Run Code Online (Sandbox Code Playgroud)

当我们使用长查询时,此错误发生在备用数据库上。我们使用 PostgreSQL 版本 12.0。一台主服务器和两台备用服务器。

您能给我们解决方案吗?

postgresql replication

2
推荐指数
1
解决办法
2万
查看次数

Postgres REINDEX 时间估计

我有一个尚未升级的旧数据库(postgres 10.15)。一张有问题的表上有一些大型索引,其中一些索引已损坏并需要重新索引。由于它不在版本 12+ 上,我无法同时重新索引表(这意味着我需要非并发地执行此操作,这需要表写锁) - 所以我想知道如何进行一些粗略计算重新索引需要很长时间,这样我就可以计划一些维护。我的大部分研究最终都以“只使用 pg_stat_progress_create_index!(这在 10 中不可用)结束,或者人们只是说同时使用。

该表约为 200GB,索引有 7 个,每个索引 14GB(根据 pg_relation_size)。对于此任务,我可以在数据库上获得约 900M/s 的恒定读取速率。是否有一个简单的指标可以用来确定需要读取多少数据才能完全重新索引?

postgresql benchmark index

2
推荐指数
1
解决办法
2361
查看次数

为了减少恢复时间(并节省空间):使用 Barman 备份时是否可以忽略某些 PostgreSQL 13 表(或模式)?

我们的 PostgreSQL 数据库之一中有一些大型临时表/临时表。其中的数据可以在数据库恢复后从其他数据库自动重新生成,并且不是业务关键型数据。使用 Barman 备份时有没有办法忽略这些表?它们都在一个模式中。

这是为了减少恢复时间并节省空间。

也许我们可以使用某种持久临时表?表空间?

我们有这些表是因为我们做 ETL 时很方便。但不被任何应用程序或客户端使用。

还有其他替代方法可以做类似的事情吗?


我读过的一些文档:

https://www.pgbarman.org/index.html

http://docs.pgbarman.org/release/2.12/

postgresql backup barman

2
推荐指数
1
解决办法
330
查看次数

创建一个临时表,循环,添加数据,从中选择?“查询没有结果数据的目的地”

我正在创建一个临时表,并从多个表中获取数据并将数据插入其中。当我尝试从表中取回数据时,出现错误:

[42601] ERROR: query has no destination for result data
Hint: If you want to discard the results of a SELECT, use PERFORM instead.
Run Code Online (Sandbox Code Playgroud)
do
$$
    DECLARE
        sampleproductId   varchar;
        productIds        text[] := array [
            'abc1',
            'abc2'
            ];
        tId              varchar;
        DECLARE result  jsonb;
        DECLARE resultS jsonb[];
    begin
       CREATE TEMP TABLE IF NOT EXISTS product_temp_mapping
        (
            accountid      int,
            productUID      varchar,
            sampleproductId text
        );
        FOREACH sampleproductId IN ARRAY productIds
            LOOP
                tId := (select id
                        from product.product
                        where uid = sampleproductId);
                INSERT into product_temp_mapping …
Run Code Online (Sandbox Code Playgroud)

postgresql plpgsql

2
推荐指数
1
解决办法
3685
查看次数

如何使用 postgres 通过 psql 列出所有序列?

我尝试\ds没有得到任何关系数据。

但我用SELECT * FROM information_schema.sequences;可以获取所有数据。

为什么不起作用\ds

postgresql psql sequence

2
推荐指数
1
解决办法
5574
查看次数

“server_lifetime”和“server_idle_timeout”有什么区别?

我正在尝试pgbouncer.ini在 Pgbouncer 中调整我的文件,并提出了我感觉相同的参数server_lifetimeserver_idle_timeout

官方配置文档中是这么说的:

服务器生命周期

池化器将关闭连接时间超过此时间的未使用的服务器连接。将其设置为 0 表示连接仅使用一次,然后关闭。[秒]

默认值:3600.0

服务器空闲超时

如果服务器连接空闲时间超过这么多秒,它将被丢弃。如果为 0,则禁用超时。[秒]

默认值:600.0

您能帮我简单地理解其中的区别吗?提前致谢!!!

postgresql pgbouncer

2
推荐指数
1
解决办法
3045
查看次数

postgresql物化视图错误:负数的非整数幂产生复杂的结果

我有复杂的计算视图,但一行会产生问题

ROUND((((latest_revenue::numeric/ oper_reve_3y_old::numeric) ^ (1/3::numeric)) -1::numeric)*100::numeric)
Run Code Online (Sandbox Code Playgroud)

当我执行查询时,计算工作正常,当我在视图中使用它时,一切正常,但是如果我尝试使用此语句创建物化视图,则会出现错误

“负数的非整数幂会产生复杂的结果”

有什么方法可以在物化视图中使用它吗?或者是否有一些解释为什么这仅适用于物化视图?

postgresql materialized-view postgresql-13

2
推荐指数
1
解决办法
436
查看次数

Postgresql - 是否可以在触发器中调用存储过程?

我想在 Postgresql 中使用触发器调用存储过程。是否可以?

这是一个例子:

create table foo(n int primary key, n1 int);     

create or replace procedure set_column_value(value int)
language plpgsql
:as $$
begin
 update foo
 set n1 = id
commit;
end;$$
Run Code Online (Sandbox Code Playgroud)

触发器类似于:在 foo 上插入或更新后,调用存储过程 set_column_value(new.n)

postgresql trigger stored-procedures

2
推荐指数
1
解决办法
4049
查看次数