Postgresql

分类下的所有文章 36 篇文章
返回所有分类

想知道数据库怎么给查询“算成本选路线”?EXPLAIN能帮你看明白?

EXPLAIN工具用于展示PostgreSQL查询优化器的执行计划,帮助理解查询的执行方式和优化路径。EXPLAIN仅生成估计计划,而EXPLAIN ANALYZE会执行查询并提供实际数据。查询计划以树状结构呈现,包含节点类型(如Seq Scan、Index Scan)和关键列(如Cost、Rows)。Cost是优化器的相对成本,基于I/O和CPU成本计算。 …

PostgreSQL处理SQL居然像做蛋糕?解析到执行的4步里藏着多少查询优化的小心机?

PostgreSQL处理SQL查询的过程分为解析、重写、规划和执行四个阶段。解析阶段将SQL字符串转换为解析树,重写阶段处理视图和规则,规划阶段选择最优执行计划,执行阶段按计划执行查询。代价模型通过计算IO和CPU成本来优化查询,统计信息影响成本计算的准确性。使用索引、选择合适的连接方式和提前过滤数据是优化查询的关键。定期更新统计信息和合理使用索引可避免性能 …

PostgreSQL备份不是复制文件?物理vs逻辑咋选?误删还能精准恢复到1分钟前?

PostgreSQL的备份与恢复是数据安全的关键,分为物理备份和逻辑备份。物理备份通过pg_basebackup直接复制数据文件,适合全量备份和快速恢复;逻辑备份使用pg_dump和pg_dumpall导出数据的逻辑结构,适合跨版本迁移和部分数据恢复。恢复时,逻辑备份通过psql或pg_restore还原,物理备份则通过替换数据目录和应用WAL日志完成。时间 …

转账不翻车、并发不干扰,PostgreSQL的ACID特性到底有啥魔法?

ACID是数据库事务的四个核心特性,包括原子性、一致性、隔离性和持久性。原子性确保事务要么完全执行,要么完全不执行;一致性保证事务执行前后数据库处于合法状态;隔离性确保并发事务互不干扰;持久性保证事务提交后修改永久保存。PostgreSQL通过事务日志、MVCC和锁机制等技术实现ACID特性,确保数据可靠性和一致性。

银行转账不白扣钱、电商下单不超卖,PostgreSQL事务的诀窍是啥?

事务是数据库中不可分割的工作单元,确保多个SQL操作要么全部成功,要么全部回滚。事务的可靠性由ACID四大特性保障:原子性、一致性、隔离性和持久性。PostgreSQL通过BEGIN、COMMIT和ROLLBACK语句控制事务生命周期,并支持四种隔离级别(读未提交、读已提交、可重复读和串行化)来解决并发冲突。保存点允许事务部分回滚,适用于复杂操作和批量处理。 …

PostgreSQL里的PL/pgSQL到底是啥?能让SQL从“说目标”变“讲步骤”?

PL/pgSQL 是 PostgreSQL 的过程化 SQL 语言,结合了 SQL 的声明式语法和过程式控制结构,用于编写复杂的数据库逻辑。其基本结构包括函数和过程,支持变量声明、参数传递、动态 SQL、条件判断、循环以及错误处理。通过 PL/pgSQL,用户可以实现计算、批量操作、事务控制等功能。函数通过 SELECT 调用,过程通过 CALL 调用,且过 …