Go语言技术文章
-
Redis ZUNIONSTORE 的 AGGREGATE COUNT 可以直接把成员在多个有序集合中的出现次数变成排名分数。本文用主题集合示例说明最小写法、WEIGHTS 边界、降序读取和目标键覆盖问题。164 收藏 -
从迁移后才暴露的视图错误入手,按时间线、CHECK TABLE、SHOW CREATE VIEW 和底层表结构逐层定位失效依赖,再做反向确认。161 收藏 -
Redis MSETNX 会先判断给出的所有键是否都不存在:全部不存在时一次性创建并返回 1,只要有一个键已经存在就不写入任何键并返回 0。本文从故障现象、最小命令、Go 客户端分支和边界处理说明如何正确使用它。159 收藏 -
MySQL 字符集迁移到 utf8mb4 时,索引长度可能因每字符最大字节数、联合索引、行格式和页大小发生变化。本文给出迁移前盘点、索引字节估算、方案选择和隔离副本复查方法。156 收藏 -
MySQL 触发器中,OLD 始终只读,NEW 只有在 BEFORE 阶段才能赋值。本文用 INSERT、UPDATE、DELETE 和审计示例说明引用边界,解释 AFTER 中修改 NEW 为什么无效。155 收藏 -
Redis Functions 会随数据库持久化并从主节点复制到副本,但集群多主、异步复制和全新实例恢复仍有边界。本文给出加载、切换、核对与发布清单。154 收藏 -
用 MySQL Performance Schema 的语句摘要表按总耗时、平均耗时、调用次数和样例 SQL 找到最值得优先处理的慢 SQL,并识别摘要容量不足造成的 NULL 汇总行。150 收藏 -
Redis TDIGEST.CDF 是给定阈值查询累计比例,TDIGEST.QUANTILE 是给定分位数查询估计值。本文用同一份 t-digest 样本说明两者的输入输出方向、业务选择和空 sketch 边界。146 收藏 -
MySQL Clone 恢复后不需要重新猜复制起点。本文说明如何从 performance_schema.clone_status 读取一致性 GTID 或文件位点,分别衔接复制通道,并处理配置未克隆、日志已清理和多线程中继日志恢复失败等问题。139 收藏 -
从脚本源码复制与脚本效果复制出发,解释 Redis Lua 写命令、AOF 和 replica 的传播边界,并给出可落地的确定性脚本写法。138 收藏 -
MySQL JSON_TABLE 展开多层数组的关键,是让每个 NESTED PATH 相对父级行源继续匹配,并把父级标量列定义在对应 COLUMNS 作用域中。本文用订单、商品、批次三级 JSON 给出完整 SQL,解释父级字段重复、序号列、空数组补 NULL 与兄弟子句非笛卡尔积等边界。137 收藏 -
数据库 · MySQL | 5天前 | MySQL · 执行计划 · 查询优化 MySQL optimizer_trace 连接顺序 considered_execution_plans plan_prefix
EXPLAIN 只显示最终连接顺序,optimizer_trace 则能保留候选前缀、访问路径、累计成本与剪枝原因。本文说明如何读取 considered_execution_plans、plan_prefix、best_access_path 和 chosen,并用统计信息复查优化器判断。137 收藏 -
Redis BF.MEXISTS 返回的是按输入顺序排列的布尔数组。本文说明如何用位次把结果映射回原始项,并处理 Bloom Filter 的可能误判、重复值、空输入和批量异常。136 收藏 -
从 JSON 路径的返回类型、函数索引表达式和排序规则入手,说明怎样让 MySQL 查询真正匹配 JSON 函数索引,并给出 EXPLAIN 排查与生成列兼容方案。136 收藏 -
Redis AOF 重写期间延迟升高时,先用 INFO persistence 确认窗口,再结合 COW、fork、fsync 排队和延迟事件区分资源竞争与命令本身变慢。134 收藏