生命周期与连接绑定要点
- 临时表仅对创建它的会话可见,其他连接查不到也建不了同名冲突
- 客户端退出 / 脚本执行结束,临时表自动销毁并释放空间
- 连接池复用连接时,上一次借用的临时表可能还在,造成串数据
- 显式 DROP 能提前释放,避免长连接占用内存与磁盘
- 同名临时表会遮蔽同名的普通表,连接内一切引用都指向临时表
- 重启 MySQL 服务会清空所有会话的临时表,无需手动清理
生命周期与连接绑定对照
| 阶段 | 临时表状态 | 说明 |
|---|---|---|
| 连接内创建后 | 仅本连接可见 | 其他连接查不到 |
| 连接保持期间 | 持续存在 | 可反复读写 |
| 主动 DROP | 立即释放 | 提前回收资源 |
| 连接断开退出 | 自动销毁 | 空间一并回收 |
| 服务重启 | 全部清空 | 无需手动处理 |
避坑提醒:在连接池(如 HikariCP、Druid)里别把临时表当持久结构用;若必须跨语句用,确保同一笔请求全程占用同一条连接。