Go语言技术文章
-
数据库 · MySQL | 59分钟前 | MySQL · DDL · 元数据锁 · 性能排查 · performance_schema · MySQL 元数据锁 metadata_locks performance_schema DDL阻塞 Waiting for table metadata lock
MySQL 的 ALTER TABLE 卡住时,不要只盯着 Waiting for table metadata lock。本文用 performance_schema.metadata_locks 和 threads 关联锁对象、等待会话与持有会话,并给出安全终止和发布前检查方法。297 收藏 -
Redis ACL DRYRUN 可以在不执行命令的情况下模拟用户权限。本文从 ACL SETUSER 配置命令权限和密钥模式,逐项验收读写边界、拒绝原因与上线前回归。359 收藏 -
Redis 向量集合适合把小规模向量检索先落到熟悉的 Redis 里。本文从 VADD 写入、VDIM 维度核对和 VSIM 相似度查询入手,演示如何验收数据是否写对、结果是否可解释,以及哪些边界不适合直接上线。225 收藏 -
数据库 · Redis | 3小时前 | Redis · 内存管理 · 故障排查 · 缓存运维 · redis OOM CLIENT NO-EVICT maxmemory-clients noeviction 客户端驱逐
Redis 写入报 OOM 时,先区分数据键无法淘汰与客户端输出缓冲触发驱逐。本文用 CLIENT NO-EVICT、maxmemory-clients、maxmemory-policy 和 INFO memory 还原两条故障链,给出核对命令、控制连接保护和回退边界。376 收藏 -
数据库 · Redis | 3小时前 | Redis · 内存管理 · 故障排查 · 缓存运维 · redis OOM CLIENT NO-EVICT maxmemory-clients noeviction 客户端驱逐
Redis 写入报 OOM 时,先区分数据键无法淘汰与客户端输出缓冲触发驱逐。本文用 CLIENT NO-EVICT、maxmemory-clients、maxmemory-policy 和 INFO memory 还原两条故障链,给出核对命令、控制连接保护和回退边界。152 收藏 -
数据库 · MySQL | 4小时前 | MySQL · 索引 · 执行计划 · sql优化 · 性能排查 · 执行计划 MySQL 8.4 EXPLAIN FORMAT=JSON cost_info query_cost
MySQL 查询慢时,EXPLAIN 的 rows 只是行数估算,真正影响优化器取舍的还包括 cost_info。本文用订单列表场景拆解 query_cost、read_cost、条件评估成本、prefix_cost 的关系,再用 EXPLAIN ANALYZE 复核估算偏差,避免把 cost 数字直接当成毫秒。239 收藏 -
数据库 · MySQL | 5小时前 | MySQL · 索引 · 执行计划 · sql优化 · 性能排查 · 执行计划 MySQL 8.4 EXPLAIN FORMAT=JSON cost_info query_cost
MySQL 查询慢时,EXPLAIN 的 rows 只是行数估算,真正影响优化器取舍的还包括 cost_info。本文用订单列表场景拆解 query_cost、read_cost、条件评估成本、prefix_cost 的关系,再用 EXPLAIN ANALYZE 复核估算偏差,避免把 cost 数字直接当成毫秒。284 收藏 -
Redis HGETEX 可以在读取 Hash 字段的同时设置或清除字段过期时间,但 PERSIST 清除的是字段 TTL,不是整个 Hash。本文用会话资料缓存演示 EX、PX、PERSIST 的返回值和验收边界。336 收藏 -
Redis 8.4 新增 MSETEX,可在一次操作中写入多个字符串键并共享过期策略。本文从旧式 MSET 加 EXPIRE 的等待链出发,核对 NX、XX、EX、PX、EXAT、PXAT 和 KEEPTTL 的边界,给出升级前后的验收方法。314 收藏 -
数据库 · Redis | 8小时前 | Redis · 数据库 · 生产运维 · Redis Functions · Redis Lua · Redis Functions FUNCTION LOAD FCALL Redis Lua 函数库部署
Redis Functions 不是把一段脚本临时塞进缓存,而是先加载成数据库里的函数库,再由客户端通过 FCALL 调用。本文用一个库存扣减函数说明 FUNCTION LOAD、显式传入键名、FUNCTION LIST 和重启后的恢复验收边界。443 收藏 -
Redis 的写入回复成功,不等于数据已经落到 AOF 或副本磁盘。本文用 WAITAOF 拆开本地 fsync、副本 fsync 和超时返回值,给出订单确认、幂等重试和生产验收的边界。284 收藏 -
数据库 · MySQL | 8小时前 | MySQL · 复制 · 主键 · InnoDB · 数据库迁移 · 数据库迁移 MySQL 8.4 sql_generate_invisible_primary_key 生成不可见主键 my_row_id
MySQL 8.4 可以为没有显式主键的 InnoDB 表生成不可见主键。本文用迁移排查场景说明如何确认 my_row_id、区分源库与副本行为,并给出备份、建表和回滚验收清单。419 收藏 -
数据库 · MySQL | 8小时前 | MySQL · 复制 · 主键 · InnoDB · 数据库迁移 · 数据库迁移 MySQL 8.4 sql_generate_invisible_primary_key 生成不可见主键 my_row_id
MySQL 8.4 可以为没有显式主键的 InnoDB 表生成不可见主键。本文用迁移排查场景说明如何确认 my_row_id、区分源库与副本行为,并给出备份、建表和回滚验收清单。208 收藏 -
数据库 · MySQL | 9小时前 | MySQL · InnoDB · Online DDL · 数据库变更 · 表重建 · MySQL 8.4 ALGORITHM=INSTANT TOTAL_ROW_VERSIONS ERROR 4092 Online DDL
MySQL 8.4 默认使用 ALGORITHM=INSTANT 加列或删列,但每次变更会累积表的行版本;本文用 TOTAL_ROW_VERSIONS 和 INFORMATION_SCHEMA 设计阈值监控,说明 ERROR 4092 的安全处理与重建窗口。234 收藏 -
数据库 · MySQL | 9小时前 | MySQL · InnoDB · Online DDL · 数据库变更 · 表重建 · MySQL 8.4 ALGORITHM=INSTANT TOTAL_ROW_VERSIONS ERROR 4092 Online DDL
MySQL 8.4 默认使用 ALGORITHM=INSTANT 加列或删列,但每次变更会累积表的行版本;本文用 TOTAL_ROW_VERSIONS 和 INFORMATION_SCHEMA 设计阈值监控,说明 ERROR 4092 的安全处理与重建窗口。245 收藏