代码改变世界

随笔分类 -  postgres

pg单独安装pg_stat_statements

2022-04-26 15:15 by abce, 1623 阅读, 收藏, 编辑
摘要: 如果编译安装pg的时候,没有安装pg_stat_statements,尝试创建pg_stat_statements扩展,可能会遇到: FATAL: could not access file "pg_stat_statements": No such file or directory LOG: d 阅读全文

PMM监控postgresql

2022-04-26 13:38 by abce, 485 阅读, 收藏, 编辑
摘要: 1.pmm客户端下载安装 wget https://repo.percona.com/pmm2-client/yum/release/7/RPMS/x86_64/pmm2-client-2.27.0-6.el7.x86_64.rpm rpm -ivh pmm2-client-2.27.0-6.el7 阅读全文

将数据库迁移到云之前需要考虑的一些事项

2022-04-25 12:49 by abce, 140 阅读, 收藏, 编辑
摘要: 在将数据库环境迁移到云之前,你应该首先考虑一些注意事项。云具有吹捧的一些优点的同时,也带来了一些风险和负面影响。让我们来看看其中一些事项。 首先,要考虑你是否会被供应商锁定。很多人选择开源数据库就是为了避免这一点。然而,有趣的事实是,实际上你可能在毫无意识的情况下被锁定。许多云供应商都有自己的数据库 阅读全文

PostgreSQL克服vacuum wraparoud

2022-04-19 22:49 by abce, 322 阅读, 收藏, 编辑
摘要: 当VACUUM进程跟不上数据库活动,就会发生事务id wraparound,PostgreSQL服务被迫关闭。 更专业的说法是:当多版本并发控制(MVCC)的语义失败,且唯一事务ID的值达到其最大值(大约20亿)时,就会发生事务id wraparound。 导致这种情况的原因是,由autovacuu 阅读全文

从MySQL DBA的角度来看PostgreSQL

2022-03-31 13:42 by abce, 134 阅读, 收藏, 编辑
摘要: MySQL MySQL是一个RDBMS,这意味着它具有人们期望的所有标准功能——表、视图、外键、存储过程和 ACID兼容性(使用 InnoDB 时)。它适用于大多数OLTP工作负载和一些OLAP工作负载。 虽然我已经看到一些实现非常复杂和重要的工作负载,但MySQL倾向于在标准、关系模式和基于Web 阅读全文

消除高流量导致的PostgreSQL瓶颈

2022-03-06 16:04 by abce, 345 阅读, 收藏, 编辑
摘要: 强调性能瓶颈,有很多方面值得关注,但是为了便于讨论,这里只从以下几个方面讨论: 1.调优性能参数 默认的参数是为了尽量少使用资源,如果不调整这些参数,会导致cpu和io消耗过高。 ·effective_cache_size:50-70%。 参考:https://www.cnblogs.com/abc 阅读全文

PostgreSQL 14的SCRAM身份验证

2022-02-11 02:42 by abce, 3610 阅读, 收藏, 编辑
摘要: 升级到PostgreSQL14之后,会遇到以下错误: FATAL: password authentication failed for a user FATAL: Connection to database failed: connection to server at “localhost” 阅读全文

PostgreSQL14新特性--Pipeline Mode

2022-02-10 22:23 by abce, 793 阅读, 收藏, 编辑
摘要: libpq管道模式允许应用程序发送查询,而无需读取先前发送的查询的结果。利用管道模式,客户端将减少对服务器的等待,因为可以在单个网络事务中发送/接收多个查询/结果。 虽然管道模式提供了显著的性能提升,但使用管道模式编写客户端更加复杂,因为它涉及管理待处理查询的队列并查找哪个结果对应于队列中的哪个查询 阅读全文

PostgreSQL 14数据库监控和日志功能的加强

2021-12-23 08:55 by abce, 863 阅读, 收藏, 编辑
摘要: 查询标识符(query identifier) 查询标识符用于标识一个查询,在扩展中可以被交叉引用。在PostgreSQL 14之前,扩展使用一个算法来计算query_id。可以使用相同的算法来计算query_id,但是扩展都使用了自己的算法来计算query_id。在14版本内核提供了query_i 阅读全文

PostgreSQL中是否要创建外键索引

2021-12-18 13:56 by abce, 851 阅读, 收藏, 编辑
摘要: 我们常常听说索引可以提升读的性能,通常这也是对的,但是我们也知道这会降低写的性能。我们没有经常听到的是,在有些场景下,索引不会提升任何性能。外键就是个例子。这里不是说所有外键都不好,但我看到的大多场景是不需要外键,有了只是增加系统负载而已。 比如,下面的两张表是1:N的对应关系。 如果我们注意本示例 阅读全文

pgbadger unable to detect log file format

2021-08-09 15:27 by abce, 311 阅读, 收藏, 编辑
摘要: 一直用pgbadger分析postgresql的日志,发现周末两天的日志分析出来问题。报错信息如下: $ /bin/pgbadger /abce/11/log/postgresql-2021-08-08_000000.csv FATAL: unable to detect log file form 阅读全文

psql还原数据的时候报"invalid command \N"错误

2021-08-06 08:44 by abce, 3042 阅读, 收藏, 编辑
摘要: 一个开发环境被开发同学误删除了表数据,通过pg_dump的文本备份文件,执行psql进行异机还原的时候,发生了报错: $ psql -U postgres -W abce < abce.sql .... invalid command \N invalid command \N invalid co 阅读全文

PostgreSQL中的不同扫描方式

2021-08-05 16:42 by abce, 1444 阅读, 收藏, 编辑
摘要: PostgreSQL支持以下的扫描方式: ·顺序扫描 ·索引扫描 ·仅索引扫描 ·位图扫描 ·tid扫描 每一种扫描方式都是有用的,取决于查询和参数配置,比如:表的cardinality、表的选择性、磁盘io代价、随机io代价、顺序io代价等等。 创建示例表 postgres=# create ta 阅读全文

sql中的exists

2021-08-03 10:42 by abce, 1012 阅读, 收藏, 编辑
摘要: 刚开始工作的开发,很容易过度的使用in、not in。其实,在有些时候可以用exists、not exists来代替in和not in,实现查询性能的提升。 exists操作符时候会和in操作符产生混淆。因为他们都是用于检查某个属性是否包含在某个集合中。但是相同点也仅限于此。 exists的真正目的 阅读全文

PostgreSQL 11为表增加带有默认值的列

2021-06-23 17:38 by abce, 674 阅读, 收藏, 编辑
摘要: 以下是10版本中的说明 即在11版本之前: ALTER TABLE x ADD COLUMN z text; it was virtually instantaneous. Get a lock on table, add information about new column to system 阅读全文

10 Things I Hate About PostgreSQL

2021-06-21 10:30 by abce, 209 阅读, 收藏, 编辑
摘要: 看到一篇题为《Ten Things I Hate About PostgreSQL》的文章。 原文地址: https://rbranson.medium.com/10-things-i-hate-about-postgresql-20dbab8c2791 这里只是大概的翻译了一下,对原文观点不做任何 阅读全文

postgresql在linux上会cache哪些内容

2021-06-10 10:11 by abce, 396 阅读, 收藏, 编辑
摘要: 在做pgbench基准测试的时候,如果只是仅仅关注tps,而不知道数据是从物理磁盘中获取,还是从shared buffer缓存、文件系统缓存、或存储缓存中命中的话,意义不是很大。linux提供的基础指标容易产生误导,很多人看了之后也不知道真正衡量的是什么。 下载并安装postgresql 11.12 阅读全文

日志文件不存在,导致归档进程启动失败

2021-05-09 13:13 by abce, 814 阅读, 收藏, 编辑
摘要: 一测试环境,在启动后,在日志中发现归档进程频繁启动失败: $ more postgresql-Sun.csv 2021-05-09 11:16:42.586 CST,,,3619,,6097541a.e23,1,,2021-05-09 11:16:42 CST,,0,LOG,00000,"endin 阅读全文

pg_dump后数据导入报错 -- invalid byte sequence for encoding "UTF8": 0xe5 0xb1

2021-04-14 13:44 by abce, 1246 阅读, 收藏, 编辑
摘要: 场景描述:node1:数据备份节点 通过securecrt登录node1,通过scp命令将备份文件传输到node2 node2:用于还原的节点 在node2执行数据导入 $ gunzip -c /tmp/abce.2021-04-14.sql.gz | psql -p 5432 -U abce -W 阅读全文

pg_repack安装和使用

2021-04-03 12:33 by abce, 3153 阅读, 收藏, 编辑
摘要: postgresql中使用pg_repack主要有三种原因: 1.大量删除记录后,从表中回收空闲空间给磁盘。 2.重新构建一个表,以重新排列记录,并将它们压缩/打包到更少的页。这可能会让查询的IO更少,性能更高。 3.从那些因为autovacuum设置不当,而导致过度膨胀的表中回收空闲空间。 pg_ 阅读全文
上一页 1 2 3 4 5 6 7 8 ··· 10 下一页
点击右上角即可分享
微信分享提示