PostgreSQL 提供了强大的触发器机制,我们可以利用它来实现全面的审计功能。下面介绍一个通用的审计触发器函数,它可以为任意表创建审计功能。 数据库审计是企业数据管理中不可或缺的一环,尤其在需要合规性和数据安全的场景下。本文将介绍如何在 ...
PostgreSQL是一个功能强大的开源对象关系型数据库系统,使用和扩展了SQL语言,并结合了许多安全存储和扩展最复杂数据工作负载的功能。 PostgreSQL的起源可以追溯到1986年,作为加州大学伯克利分校POSTGRES项目的一部分,并且在核心平台上进行了30多年的积极开发。
PostgreSQL 提供了一些简单的机制使得编写并行算法更加简单。你可以通过使用 ParallelContext 数据结构去唤起后台工作进程、初始化工作进程的进程状态(以匹配唤起他们的后台进程),使进程通过动态共享内存 (Dynamic Shared Memory) 进行通信和写并不复杂的逻辑且不 ...
postgres=# create schema a; CREATE SCHEMA postgres=# create schema b; CREATE SCHEMA postgres=# create table a.t (id int); CREATE TABLE postgres=# create table b.t (id int); CREATE TABLE postgres=# ...
PostgreSQL中的表会有一个RelFileNode值指定这个表在磁盘上的文件名(外部表、分区表除外)。一般情况下在pg_class表的relfilenode字段可以查出这个值,但是有一些特定表在relfilenode字段的查询结果是0,这个博客中将会探究这些特殊表relfilenode的内核处理。 正常表的 ...
分区表,可以认为是逻辑上一张表,但实际上是将逻辑上的一张表,分割为了多个物理表,每个物理表是逻辑表中的一部分,组合起来就是一张表。所以在实现分区表时,实际上是创建了多张物理表,但是逻辑上抽象为了一张表。下面我们就分析一下PostgreSQL中 ...
身为 RSS 重度用户的我,被 Platy Hsu同学的文章种草了 Tiny Tiny RSS 后,决定自己动手。不过 Platy 的文章是基于 Docker,因为一些原因我准备基于官方文档,使用「传统」的方式部署。 此外,如果你和 Platy 一样使用 Docker 进行部署,这里有一些改进: 这个映像中已经 ...