PostgreSQL 13 - backtrace 功能预览
目前在 Greenplum、MySQL 数据库中均支持 backtrace 功能,现在 PostgreSQL 13-devel 版本中也新增了这个功能,我们可以在服务器日志中记录堆栈信息。

本文将对该功能进行简要介绍。
目前在 Greenplum、MySQL 数据库中均支持 backtrace 功能,现在 PostgreSQL 13-devel 版本中也新增了这个功能,我们可以在服务器日志中记录堆栈信息。
本文将对该功能进行简要介绍。
PostgreSQL 数据库中提供的某些系统表是 Cluster 级别共享的,他们在数据库内部被称为 shared_relation
,本文就介绍一下 PostgreSQL 是如何创建共享表的。
本文记载了如何在 MacOS 平台制作 U 盘安装镜像,这里主要使用到了 hdiutil,diskutil 和 dd 三个命令。
今天在使用 ALTER SYSTEM
来修改 PostgreSQL 参数时遇到无法启动数据库的问题。如下所示:
1 | postgres=# ALTER SYSTEM SET shared_preload_libraries TO 'pg_buffercache,passwordcheck'; |
你是否也遇到了这样的问题呢?其实这都是由于我们先入为主的思想导致的,ALTER SYSTEM
支持以逗号分割的列表,而这类参数的修改不需要使用引号。因此,正确的使用方式如下:
1 | ALTER SYSTEM SET shared_preload_libraries TO pg_buffercache, passwordcheck; |
我们都知道 PostgreSQL 针对每个数据库集群实例,都会有一个唯一的标识符 - system identifier。那么这个标识符是如何生成的呢?本文将对其进行简要的分析。
我们经常需要在 psql 中修改查询语句,例如,我们编辑了几行查询语句,然后需要修改之前的内容,我之前额做法就是 Ctrl-C 然后在重新输入。其实,我们可以不必这么复杂。我们可以使用 \e
命令来编辑查询缓冲区。如下所示:
1 | postgres=# SELECT * FROM |
此时,我们发现 pg_calss
拼写错了,那么我们可以通过 \e
对其进行修改。如下所示:
1 | postgres-# WHERE relname = 'pg_class' |
\e
命令将会创建一个临时文件,然后我们便可以通过编辑文件的方式对其进行修改了,当保存之后,psql 将会把文件内容存放到查询缓冲区中。
\e [ filename ] [ line_number ]
命令还可以接文件和行号,文件指定了我们想要编辑的文件,行号则表明文件打开时光标所处的位置。注意,如果仅跟一个数字,该命令将其视为行号,例如 \e 3
表示编辑查询缓冲区,并将光标移动到第三行。
作为一个刚入门的 Go 小白来说,下载第三方包就成为了第一道坎 :( 。本文简要介绍一下如何下载 Go 软件包,尤其是 Google 系列的包。
最近,在公司采用 Seafile 搭建了一个文件服务器,并结合 OnlyOffice 实现在线预览功能。本文简要记录一下这个过程中所遇到的问题。