MySQL技术文章
-
MySQL 的 TIMESTAMP 会按连接时区与 UTC 做转换,DATETIME 则保存字面上的日期时间。本文从瞬时事件、预约时间、连接会话和 2038 年范围几个边界出发,整理跨时区业务的选型和检查方法。384 收藏 -
本文围绕 MySQL ST_Simplify 处理 LineString 的实际任务,说明 max_distance 的距离单位、公差选择、节点变化和 ST_IsValid 有效性检查,并给出安全回写简化几何的 SQL 示例。384 收藏 -
MySQL 复制过滤不是按配置文件书写顺序覆盖,而是先改写库名,再判断库级规则,最后按精确表 do、精确表 ignore、通配表 do、通配表 ignore 的固定顺序命中即退出。本文结合 STATEMENT、ROW 与 DDL 的差异,给出可推演的判断方法。382 收藏 -
MySQL ST_SwapXY 交换几何中每对坐标的 X、Y 分量。本文给出点、折线和集合写法,并区分数据交换、轴顺序解析与坐标系变换。381 收藏 -
MySQL 8.4 中,RANGE 和 ROWS 看起来只差一个单词,却会在同分值、时间范围和滚动统计中产生不同结果。通过订单金额累计和 7 天滑动平均两个例子,定位默认窗口边界并给出验收方法。380 收藏 -
MySQL 用 SUM OVER 计算累计值时,如果希望每个月重新开始,关键不是给 SUM 加条件,而是把包含年份的月份键放进 PARTITION BY,并用稳定的时间与主键排序。本文给出可直接改写的 SQL 和排查清单。380 收藏 -
数据库 · 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 JSON 列不能直接按任意路径高效过滤时,可以用 generated column 把固定路径提取成可索引的 SQL 类型。本文从表达式、字符排序规则、VIRTUAL/STORED 和 EXPLAIN 四个方面给出实现方法与边界。377 收藏 -
MySQL 8.0 的 SELECT FOR UPDATE NOWAIT 能在目标行被占用时立即返回,而不是让请求排队。本文用订单库存场景拆解锁冲突返回、事务回滚与唯一索引边界。376 收藏 -
MySQL JSON_OVERLAPS 用于判断两个 JSON 文档是否存在共同元素,适合筛选标签、权限或适用范围数组。本文给出查询写法,并说明 JSON_CONTAINS、类型精确匹配、NULL、嵌套数组和 InnoDB 多值索引的边界。376 收藏 -
解释 MySQL 同表 OR 条件何时可能采用 Index Merge,带你从 EXPLAIN 的 type、key、rows、Extra 判断 union 与 sort_union,并通过单语句对照实验评估是否值得保留。373 收藏 -
数据库 · MySQL | 3星期前 | MySQL · InnoDB · 数据库运维 · mysql 死锁 错误日志 events_statements_history_long data_lock_waits Performance Schema
MySQL 可用错误汇总表统计 1213,用语句历史表定位受害 SQL,用锁表观察当前阻塞;完整死锁图仍应写入错误日志长期留存。372 收藏 -
用 MySQL sys.schema_index_statistics 按读取延迟和读取行数定位高开销索引,解释字段含义、排序方法、写入影响以及 Performance Schema 统计边界。372 收藏 -
MySQL 开启 ONLY_FULL_GROUP_BY 后,ANY_VALUE 可以解决哪些非聚合列报错?本文用订单分组示例说明它的语义、风险边界和核对方法。371 收藏 -
MySQL 连接池耗尽时不要先盲目调大 max_connections。本文从 Threads_connected、Threads_running、SHOW FULL PROCESSLIST 和 performance_schema.threads 入手,区分连接未释放、慢查询锁等待与瞬时并发峰值。369 收藏