场景描述
通过PHP+swoole实现多进程查询一个记录表,表里有1亿+的数据,开20个进程大概需要4分多钟全部能查一遍,但是查完后innodb_buffer_pool_size
分配的4G内存已经全部用完。
问题
- 为什么查完后内存全部用完了?
- 为什么每次查完后内存的占用没有释放?
- 能不能每次查询结束后手动释放内存?
诚邀各位大佬答疑解惑,非常感谢
###这里应该说是用满,不应该说用完,因为并不是用满了,就没得用了。
当需要的时候,MySQL有自己的淘汰算法去淘汰内存页,不需要你手动释放内存。