AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-30035

Vao Tsun's questions

Martin Hope
Vao Tsun
Asked: 2017-07-14 05:04:40 +0800 CST

查找特定 PostgreSQL 配置设置的来源

  • 4

如果我做对了,设置是分层的:

postgres.conf->
postgres.auto.conf (ALTER SYSTEM)->
ALTER DATABASE(where applicable)->
ALTER USER(where applicable)->
SET SESSION(where applicable)->
SET LOCAL(where applicable)

假设我已经enable_seqscan设定off在某个时候。SHOW或current_setting(或pg_settings只会显示当前值。但是要检查为什么我关闭它,我必须检查整个链条。例如,我怀疑有人为每个用户或每个数据库设置了它,或者auto.conf- 为了找到设置的宽度,我必须检查所有的设置。否则重置值可能会失败,例如:

vao=# show enable_seqscan;
 enable_seqscan
----------------
 off
(1 row)

vao=# set enable_seqscan to default;
SET
vao=# show enable_seqscan;
 enable_seqscan
----------------
 off
(1 row)

因为对于用户 vao 或数据库 vao 或更深层次的...

找到当前值的主要来源的简短方法是什么?..或者最好是设置的所有来源的矩阵。是否有任何界面或猴子黑客?

更新以反映出色的 Abelisto 回答:

source, sourcefile from pg_settings是一个很好的信息来源,但出于这些原因,我仍然要求使用一种猴子方式来检查:要查看database或user在source我必须重新登录 - 显然。所以在它们实际应用于会话之前,我无法检查它们。本地和会话集同时显示 SESSION(这也很合理),最后我仍然必须逐步将所有层次结构重置为默认值。例如:

vao=# select setting, source, sourcefile from pg_settings where name = 'enable_seqscan';
 setting |  source  | sourcefile
---------+----------+------------
 off     | database |
(1 row)

vao=# select * from pg_file_settings where name = 'enable_seqscan';
                    sourcefile                     | sourceline | seqno |      name      | setting | applied | error
---------------------------------------------------+------------+-------+----------------+---------+---------+-------
 /etc/postgresql/9.6/main/a                        |          1 |     1 | enable_seqscan | off     | f       |
 /var/lib/postgresql/9.6/main/postgresql.auto.conf |          3 |    26 | enable_seqscan | on      | t       |
(2 rows)

因此,如果我不检查每个来源,我的更改就不会得到尊重。

postgresql configuration
  • 1 个回答
  • 1014 Views
Martin Hope
Vao Tsun
Asked: 2017-03-31 01:05:15 +0800 CST

postgres standby - 什么不是 WAL 记录可以重放?

  • 0

https://www.postgresql.org/docs/current/static/standby-settings.html

延迟仅发生在事务提交的 WAL 记录上。其他记录会尽快重放,这不是问题,因为 MVCC 可见性规则确保它们的效果在应用相应的提交记录之前是不可见的。

我认为流式复制 xlog 是在从服务器上重播的。不会重放本地事务。跳过 WAL(例如)的远程语句create table nologging不会在从站上重播。现在我很困惑 -那些不等待重播的其他记录是recovery_min_apply_delay什么?..

postgresql
  • 1 个回答
  • 177 Views
Martin Hope
Vao Tsun
Asked: 2017-02-24 08:11:21 +0800 CST

postgres_fdw 比 copy + scp + copy 慢(~12 次)

  • 4
  • 国外服务器 9.2

  • 本地服务器 9.5

  • 表是 10GB

  • 在与外国服务器相同的网络接口上执行数据传输

  • 没有为数据设置索引

  • 老办法:

    1. 复制到 - 2:36
    2. SCP-08:17
    3. 从 - 10:11 复制
  • postgres_fdw:

    1. 到老方法完成时,它已经完成了 800MBinsert into .. select * from foreign_table

我是否错过了配置中的某些内容(意味着我可以改进它),或者postgres_fdw只是不适合批量加载(意味着我无法改进它)?

(我将它用于小数据量的协调,它工作正常。insert select from fdw代替运行 bash 命令的想法看起来很不错。)*

我尝试从本地服务器到远程服务器的 psql \copy table- 六分钟 - 比通过 ssh 更快。

该fetch_size选项在 9.6 之前不可用,可以模拟dblink_fetch(CURSOR, fetch_size)- 请参阅下面的答案。

postgresql bulk
  • 2 个回答
  • 2004 Views
Martin Hope
Vao Tsun
Asked: 2016-12-16 02:22:42 +0800 CST

时间数据类型如何使用浮点存储

  • 2

在 Postgres 文档页面Date/Time Types,它说:

对于时间类型,当使用八字节整数存储时,p 的允许范围是从 0 到 6,或者当使用浮点数存储时,p 的允许范围是从 0 到 10。

我试图生成 SQL 语句time(p),什么时候p=10?我总是得到

警告:TIME(10) 精度降低到允许的最大值,6

不管我是否将秒数置于浮动状态。我意识到我遗漏了一些非常明显的东西。请举一个p=10的例子。

postgresql datetime
  • 1 个回答
  • 1018 Views
Martin Hope
Vao Tsun
Asked: 2016-12-10 05:09:19 +0800 CST

jsonb_each_text(jsonb) 返回 jsonb,而不是文本

  • 1

根据文档,jsonb_each_text(jsonb)返回

一组键文本,值文本

但如果你pg_typeof(value)在结果上显示jsonb,例如:

SELECT *, pg_typeof(key) AS type_key, pg_typeof(value) AS type_value
FROM jsonb_each('{"2": "-200.08"}');

 key |   value   | type_key | type_value 
-----+-----------+----------+------------
 2   | "-200.08" | text     | jsonb

更新: 我把文档误认为jsonb_each_text是jsonb_each

postgresql json
  • 1 个回答
  • 5538 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve