category

Database

共 92 篇文章。
全部文章GameGolangSaasRust游戏开发客户端开发GameDevProductsLua写作小说IndieFrontendPrd
database

PostgreSQL 数据库设计规范:范式、类型选择与迁移演进

好的 schema 设计决定一个系统未来十年好维护还是天天改表。本文系统讲解 PostgreSQL 表设计规范:主键策略(序列/UUID/snowflake)、字段命名与类型选择(数值/时间/JSONB/text)、范式与反范式权衡、外键与约束、索引与唯一性、时间戳与软删除、分表与分区,以及基于迁移工具(Alembic/Prisma)的 schema 演进流程。

6 分钟阅读
postgresql schema 设计
database

PostgreSQL 监控与诊断体系:pg_stat_activity、慢查询、pg_stat_statements 与 Prometheus 告警

构建完整的 PostgreSQL 监控与诊断体系:pg_stat_database 与 pg_stat_activity 关键指标解读、慢查询日志与 log_min_duration_statement、auto_explain 自动执行计划、pg_stat_statements 语句级统计、Prometheus + postgres_exporter + Grafana 仪表盘搭建、核心告警规则(连接数/复制延迟/死元组)、诊断常用 SQL 与常见问题定位方法论。

7 分钟阅读
postgresql monitoring observability
database

PostgreSQL JSONB 性能实战:二进制存储、GIN 索引、查询优化与文档工作负载建模

深入讲解 PostgreSQL JSONB 在文档工作负载下的性能实践:JSONB 二进制存储格式与 TOAST、GIN 倒排索引(jsonb_ops/jsonb_path_ops)与表达式索引、@> 包含与路径操作符查询优化、JSONB 与关系型建模的权衡、函数与操作符性能差异、大 JSON 文档的坑、与 MySQL JSON/MongoDB 的对比,以及真实调优案例。

8 分钟阅读
postgresql jsonb json
database

PostgreSQL 逻辑复制与 CDC:发布订阅、WAL 解码、零停机迁移与 Debezium/Kafka 集成

系统讲解 PostgreSQL 逻辑复制与变更数据捕获(CDC):逻辑复制原理与 WAL 解码(pgoutput/wal2json/decoderbufs)、发布订阅(CREATE PUBLICATION/SUBSCRIBE)配置、逻辑复制做故障切换与零停机迁移、初始同步机制、DDL 限制与数据冲突处理、与 Debezium/Kafka 的数据流集成、复制延迟监控与性能优化。

8 分钟阅读
postgresql logical-replication cdc
database

PostgreSQL 事务、隔离级别与锁:MVCC 快照、行锁/表锁、死锁检测与长事务治理

深入解析 PostgreSQL 事务体系:MVCC 快照与可见性规则、四种隔离级别(读已提交/可重复读/可串行化/SSI)的差异与异常、行锁与表锁的兼容矩阵、pg_locks 锁等待分析、死锁检测机制与避免策略、快照陈旧与长事务(idle in transaction)、事务重试与幂等设计、锁监控常用 SQL。

8 分钟阅读
postgresql transactions isolation
database

PostgreSQL VACUUM 与表膨胀治理:MVCC 死元组、Autovacuum 调优与膨胀诊断

系统讲解 PostgreSQL 的 VACUUM 机制与表膨胀治理:MVCC 多版本并发控制如何产生死元组、VACUUM 与 AUTOVACUUM 的工作原理与触发条件、autovacuum 参数调优、表膨胀与索引膨胀诊断(pgstattuple/n_dead_tup)、手动 VACUUM FULL 与 CLUSTER、高频 UPDATE 场景的防膨胀设计,以及死元组监控与告警体系。

9 分钟阅读
postgresql vacuum autovacuum
database

PostgreSQL 索引类型深度实战:B-tree 原理、组合索引、GiST/GIN/BRIN 与索引维护

深入解析 PostgreSQL 全家族索引:B-tree 平衡树原理与索引高度、组合索引列顺序与最左前缀、跳跃扫描的真相、GiST 空间与范围检索、GIN 倒排索引(全文搜索/JSONB/数组)、BRIN 块范围索引、部分索引与表达式索引、覆盖索引 INCLUDE、索引膨胀诊断与并发重建。每个索引类型配真实 DDL、EXPLAIN 示例与选型决策表。

10 分钟阅读
postgresql indexing b-tree
database

数据库高可用架构:主从复制、自动故障切换、脑裂防护与 RTO/RPO 工程

数据库挂了,业务就挂了——高可用(HA)的目标是把"数据库不可用"的概率压到最低,并在不可避免的故障发生时自动、快速、无感知地完成切换。但高可用不是"买几台机器做主从"这么简单:主从复制只是基础,真正难的是故障检测(怎么判断主库真挂了)、自动切换(谁能成为新主 …

8 分钟阅读
high-availability failover replication
database

在线 DDL 原理与最佳实践:MySQL/PostgreSQL 大表变更的锁与数据拷贝

对千万级、亿级大表执行 ALTER TABLE 是最让 DBA 与后端工程师胆战心惊的操作之一:一个看似简单的加列、加索引,可能把业务写流量堵死几分钟,甚至引发锁等待风暴。问题的根源在于表结构变更需要在短时间内独占表锁、重写整张表。为此,数据库演进出了在线 DDL 机制(MySQL 的 InnoDB …

9 分钟阅读
ddl online-ddl mysql
database

分库分表中间件深度:ShardingSphere 架构、路由、改写与分布式治理

分库分表是单机数据库容量触顶后的必经之路,但"怎么分"只是开始——真正复杂的是分完之后:请求怎么路由到正确的库表、SQL 怎么写才能分片、跨分片查询怎么聚合、数据迁移与扩容怎么做。如果这些问题全部靠业务代码硬扛,系统会快速腐烂。分库分表中间件 …

8 分钟阅读
shardingsphere sharding middleware
database

主从数据一致性校验与修复:chunk 对账、pt-table-checksum 与增量修复实战

“主从复制是自动的,所以主从数据一定一致”——这是运维里最大的错觉之一。binlog 丢失、复制中断、人为误操作、半同步降级、甚至程序 BUG,都会让从库与主库悄然分道扬镳。更隐蔽的是:复制通常不会报错,不一致像蛀虫一样潜伏,直到某个深夜的查询突然返回错误数据。数据一致性校验 …

8 分钟阅读
data-consistency pt-table-checksum pt-table-sync