Go语言技术文章
-
通过显式字段映射、用户变量和 IGNORE 处理 MySQL LOAD DATA 的脏行,并立即保存 Records、Skipped、Warnings 与 SHOW WARNINGS 明细。432 收藏 -
MySQL utf8mb4 排序规则不是只影响 ORDER BY,也会改变字符串的相等判断,从而让唯一索引出现新增冲突或放宽边界。本文用 INFORMATION_SCHEMA、COLLATE 对比和迁移前分组检查,说明如何安全判断与处理。431 收藏 -
数据库 · MySQL | 4星期前 | MySQL · 执行计划 · InnoDB · 索引优化 · explain 函数索引 MySQL 8.4 Functional Key Parts 表达式索引
MySQL 8.4 函数索引可以直接为表达式结果建立索引,但表达式写法、数据类型、写入成本和查询计划都要一起验收。本文用订单日期与 JSON 状态筛选两个场景,说明什么时候该建函数索引、什么时候改写查询更稳。429 收藏 -
MySQL 事务回滚后出现自增主键空洞并不代表数据错乱。本文用 INSERT、ROLLBACK 和并发场景说明 AUTO_INCREMENT 的分配边界,并给出业务编号与主键分工、复核和验收方法。429 收藏 -
Redis Pipeline 可以通过批量发送命令减少网络往返,但服务端会暂存回复,客户端也会积累待执行命令。本文用 redis-py 分批写入示例,说明如何在延迟收益与客户端、服务端内存边界之间选择批量大小。426 收藏 -
MySQL 表出现重复审计记录时,不要先删触发器。本文从 SHOW TRIGGERS、SHOW CREATE TRIGGER 和最小写入复现入手,区分多触发器、执行时机、递归写入与连接重试造成的重复。425 收藏 -
讲清 MySQL EXISTS、IN、NOT IN 遇到 NULL 时的三值逻辑差异,并给出 IS NOT NULL 与 NOT EXISTS 的安全写法。425 收藏 -
用 ROW_NUMBER 为组内记录编号,演示 MySQL 分组取最新整行的写法,并说明 MAX 加回表、并列时间和索引复查要点。423 收藏 -
Redis MULTI 中要先区分队列阶段错误、WATCH 冲突和执行阶段错误。现代 Redis 的语法或参数错误会让 EXEC 返回 EXECABORT;类型错误可能进入结果数组,其他命令仍会执行。本文给出判断和有限重试边界。423 收藏 -
Redis Lua 脚本如何把多个 key 的读取、条件校验和修改放进一次原子执行,并正确使用 KEYS、ARGV、hash tag 与 EVALSHA。423 收藏 -
Redis 大 Key 空间不适合直接使用 KEYS *。本文用 SCAN 游标、MATCH、COUNT 和幂等批处理设计一套可控的遍历流程,并说明重复返回、空批次与动态 keyspace 的边界。422 收藏 -
Redis 内存达到 maxmemory 后,淘汰策略决定哪些键先离开。本文从缓存实例的内存告警现场出发,解释 allkeys-lru、volatile-lru、allkeys-lfu 和 noeviction 的适用边界,并给出命中率、淘汰计数与回滚核对方法。420 收藏 -
数据库 · MySQL | 3星期前 | MySQL · 执行计划 · 查询优化 · 统计信息 · explain MySQL 8.4 直方图统计 ANALYZE TABLE COLUMN_STATISTICS
当 WHERE 条件落在数据分布很不均匀的列上,MySQL 估算行数可能偏离实际。本文用 orders.status 这个可复现实例,说明什么时候建立直方图、如何选择桶数量,以及怎样用 COLUMN_STATISTICS 和 EXPLAIN 验收收益。420 收藏 -
Redis 分布式锁最容易出问题的地方,不是 SET NX EX 本身,而是任务执行时间超过租约后如何续期、谁有资格释放以及续期失败后怎样停止业务写入。本文用单实例锁的最小模型拆开租约、看门狗、随机令牌和围栏令牌的边界,再给出可验收的续期与释放检查清单。419 收藏 -
MySQL 8.4 可以用 ALTER USER 为单个账户覆盖全局密码策略。本文用 password_history、password_reuse_interval 和 password_require_current 演示如何收敛影响范围,并核对 mysql.user 中的结果。418 收藏