Go语言技术文章
-
Redis Streams 消费组恢复超时 pending 消息时,可以给 XAUTOCLAIM 加 JUSTID,只接管并返回消息 ID,再按 ID 读取和处理,成功后用 XACK 清理 PEL。本文用一个小型恢复器说明游标、COUNT、0-0 和失效 ID 的处理边界。187 收藏 -
Redis Stream 的 NOACK 让新读取消息不进入 PEL,却不能保证业务成功。本文给出消费组命令和两组对照示例,区分读取、成功与 Pending 计数,说明性能测量方法及丢失容忍边界。498 收藏 -
数据库 · MySQL | 1星期前 | mysql事务 · InnoDB · mysql READ ONLY transaction_read_only 只读事务 START TRANSACTION
报表连接可以用 READ ONLY 把事务访问模式收紧,写入会被 MySQL 阻断;但它不是账号权限,仍要配合 SELECT 最小权限、正确的连接池作用域和临时表例外处理。439 收藏 -
数据库 · MySQL | 1星期前 | MySQL · mysql SET PERSIST SET PERSIST_ONLY RESET PERSIST mysqld-auto.cnf SET GLOBAL
MySQL 的 SET GLOBAL 只改变当前实例运行时值,SET PERSIST 还会把配置写入 mysqld-auto.cnf;SET PERSIST_ONLY 只持久化而不改当前值。本文用生效时机、变量可写性、权限和回退动作说明四条语句该怎么选。378 收藏 -
MySQL ANSI_QUOTES 会把双引号内容解析为标识符。本文区分名称与字符串,说明会话配置、同名列误读风险及迁移写法,并提供保留原模式的临时表对照示例。279 收藏 -
MySQL 递归 CTE 的路径列要在锚点查询中先确定足够宽的字符类型,再由递归成员追加节点名称;本文给出写法、长度估算和排查边界。405 收藏 -
MySQL 使用 INSERT ... ON DUPLICATE KEY UPDATE 做幂等写入时,怎样区分新增、实际更新和重复值未变化?本文结合 affected rows、LAST_INSERT_ID、CLIENT_FOUND_ROWS 与多唯一键边界给出判断方法。181 收藏 -
数据库 · MySQL | 1星期前 | MySQL · 执行计划 · 查询优化 · mysql Hash Join 哈希连接 EXPLAIN FORMAT=TREE block_nested_loop join_buffer_size
MySQL 8.4 默认会在可行时采用哈希连接,但是否生效取决于连接条件、可用索引、block_nested_loop 控制项和内存边界。本文从常见慢查询症状出发,说明如何判断候选条件并用 EXPLAIN FORMAT=TREE 复查。185 收藏 -
MySQL LOAD DATA 导入带表头 CSV 时,使用 IGNORE 1 LINES 跳过首行;同时配合 FIELDS、LINES、列清单和 LOCAL 选项,让逗号、双引号、换行、文件位置与权限保持一致。420 收藏 -
MySQL 多表 JOIN 中只想约束一张表时,应使用表别名限定 JOIN_INDEX 或 NO_JOIN_INDEX,并在嵌套查询中用 QB_NAME 明确作用域,最后通过 EXPLAIN 对比 key、访问类型和 rows。432 收藏 -
从 JSON 路径的返回类型、函数索引表达式和排序规则入手,说明怎样让 MySQL 查询真正匹配 JSON 函数索引,并给出 EXPLAIN 排查与生成列兼容方案。136 收藏 -
MySQL JSON_OVERLAPS 用于判断两个 JSON 文档是否存在共同内容。本文以数组交集为主线,说明它与 JSON_CONTAINS 的区别,并补充对象、标量、NULL、类型边界和多值索引方向。279 收藏 -
用 JSON_VALUE 的 RETURNING 明确结果类型,再分别处理路径缺失和类型转换异常,避免 JSON 标量在查询中被当成普通字符串。404 收藏 -
MySQL 按日期计算累计值时,默认 RANGE 会把同一天的记录视为同一组;需要逐行累计时使用 ROWS,并补充稳定排序键。本文用同一组数据对比 ROWS、RANGE 和日期区间窗口的适用边界。393 收藏 -
MySQL 按分组取前几条记录时,可在派生表中用 ROW_NUMBER() 为每组排序编号,再由外层过滤 rn。本文说明稳定排序、并列名次、索引和边界测试。230 收藏