您通常如何处理数据库事务日志?

Posted

技术标签:

【中文标题】您通常如何处理数据库事务日志?【英文标题】:What do you normally do with DB transaction logs? 【发布时间】:2020-05-22 11:31:33 【问题描述】:

我只是好奇,您通常如何处理事务日志?我找不到这个问题的确切解释。除了容错,你会做数据库恢复之类的事情吗?例如,我在 kubernetes 集群之上有一个 PostgreSQL,我有一个 Redshift 集群。如果我将 Debezium 连接器连接到 PostgreSQL,我可以将事务日志发送到 S3,并在 Redshift Cluster 中创建与 PostgreSQL 中的表完全相同的表(在 kubernetes 之上)。我是一名初级数据工程师,我真的很好奇这种做法是否正常。提前非常感谢!我正在尝试建立一个数据仓库,希望有人可以为我解答这个问题。

【问题讨论】:

你在 MS word 中使用过 CTRL Z 和 CTRL Y 吗?它们是 UNDO 和 REDO 功能。除非出现问题,否则您通常不需要它们。 @GaneshChandrasekaran 不,我没有。 【参考方案1】:

事务日志的 PostgreSQL 术语是 WAL 段或 WAL 文件。 DBA 必须注意备份它们:恢复数据库需要它们。

详见https://www.postgresql.org/docs/12/continuous-archiving.html

【讨论】:

以上是关于您通常如何处理数据库事务日志?的主要内容,如果未能解决你的问题,请参考以下文章

数据库日志已满,如何处理?

数据库日志已满,如何处理?

检查点(Checkpoint)过程如何处理未提交的事务

事务内部只允许查询祖先查询,如何处理?

清洁架构 - 如何处理数据库事务?

Mysql精华问答| 分库分表之后,ID主键及事务如何处理