MySQL技术文章
-
MySQL JSON_SCHEMA_VALID() 只能返回 0 或 1。本文用 JSON_SCHEMA_VALIDATION_REPORT() 读取失败原因、JSON Pointer 路径和失败关键字,区分 required 与 type 错误,并给出可接入审计流程的 SQL 写法。230 收藏 -
MySQL 触发器中,OLD 始终只读,NEW 只有在 BEFORE 阶段才能赋值。本文用 INSERT、UPDATE、DELETE 和审计示例说明引用边界,解释 AFTER 中修改 NEW 为什么无效。155 收藏 -
MySQL 同一张表存在多个相同事件和时机的触发器时,默认按创建顺序执行。本文用 FOLLOWS、PRECEDES 固定 BEFORE UPDATE 链路,并给出复核与维护清单。333 收藏 -
从迁移后才暴露的视图错误入手,按时间线、CHECK TABLE、SHOW CREATE VIEW 和底层表结构逐层定位失效依赖,再做反向确认。161 收藏 -
从只读视图部分调用者失败的现象入手,按创建时、引用时和函数执行时拆解权限检查,比较 SQL SECURITY DEFINER 与 INVOKER 的差异,并给出查看定义、选择上下文和防复发的处理顺序。314 收藏 -
MySQL 嵌套可更新视图中的 LOCAL 与 CASCADED 决定写入检查范围。本文用订单视图对比两者在内层无约束、内层已有约束和 UPDATE 场景下的差异,帮助你选择合适的视图写入边界。363 收藏 -
数据库 · MySQL | 6天前 | MySQL · 表结构 · 备份恢复 · mysqldump · mysql mysqldump 逻辑备份 GIPK generated invisible primary key
说明 mysqldump 如何保留或排除生成不可见主键,并用恢复后的建表语句和列元数据核对结果。464 收藏 -
MySQL 的 CREATE TABLE ... SELECT 会默认忽略源表的 INVISIBLE 列;显式选择后列会进入新表但默认变为可见。本文用 CTAS 示例说明如何选择隐藏列、保留隐藏属性,并检查最终结构。266 收藏 -
MySQL 的 INVISIBLE 列仍然存在,只是不会被 SELECT * 或表别名通配展开。本文用最小示例对比通配查询、显式列名和元数据排查方法,说明如何兼容旧接口并稳定读取隐藏辅助列。213 收藏 -
MySQL 批量导入遇到 CHECK 约束不应只看导入是否结束。本文用 LOAD DATA IGNORE 保留合法行,说明如何紧接着读取 SHOW COUNT(*) WARNINGS 与 SHOW WARNINGS,并把违规信息交给审计流程。170 收藏 -
MySQL CHECK 约束可以先用 NOT ENFORCED 保留定义,再在清理存量脏数据后切换为 ENFORCED。本文用一张订单表串起状态识别、违规扫描、修复隔离和 ALTER CHECK 切换的完整迁移路径。395 收藏 -
MySQL CHECK 约束遇到 NULL 时可能返回 UNKNOWN,而 UNKNOWN 与 TRUE 一样不会触发 CHECK 失败。本文用字段约束对照说明三值逻辑,并给出 NOT NULL 与 CHECK 的显式非空写法。265 收藏 -
用 InnoDB 任务表实现并发取件时,NOWAIT 适合立即失败,SKIP LOCKED 适合跳过占用行。本文给出事务边界、SQL 写法、错误处理和复制安全边界。360 收藏 -
MySQL 连接属性不会自动把会话送进资源组。本文用 session_connect_attrs 识别连接,再通过 SET RESOURCE GROUP 完成调度,并给出线程核对、权限与连接池复用的配置方法。388 收藏 -
MySQL 直方图不会因为每次写入自动按固定周期刷新。本文用 COLUMN_STATISTICS 判断数据漂移,比较手动刷新与 AUTO UPDATE,并给出采样率、执行计划和回滚检查清单。222 收藏