mysql的内存使用
研究了很久mysql内存的使用,大致了解到mysql基本会这样占用内存
innodb_buffer_pool_size+key_buffer_size 的 global stuff;
join_buffer_size+ read_buffer_size+sort_buffer_size+read_rnd_buffer_size 的每个 thread占用;
max_connections =N 总共占用 N * 每个 thread占用
还有一些 max_heap_table_size 相关临时表的占用
——————————————————————————————————————————-————————
不知道有没有什么status参数是我平时应该关注的相关内存的参数?
大多mysql在linux下显示内存使用量较大,但是top和ps显示mysql并没有占用很大内存。是不是linux使用内存机制造成的?还是一些数据库真的占用了大量内存?是内存泄漏?
yejr
周日, 2008/05/11 - 14:50
Permalink
Innodb_buffer_pool_pages_* ke
Innodb_buffer_pool_pages_*
key_*
qcache_*
Created_tmp_*
主要是以上几个部分。
某些版本的mysqld可能由于bug会引发内存泄露,需要监控一下内存使用增长情况。
对数据库来说,一般使用越多内存,那么性能可能越好,不需要过度担心。但是如果发生内存资源不够,导致mysqld崩溃的情况,那就需要注意了。
MySQL方案、培训、支持
MySQL 用户组
游客 (未验证)
周三, 2008/05/14 - 15:02
Permalink
数据库本来就是越占
数据库本来就是越占内存,性能越好!如果系统内存占用显示正常,那数据库不会占用大量内存,如果是内存泄漏,那应该会崩溃的吧??
yejr
周三, 2008/05/14 - 15:10
Permalink
是的,发生内存泄露
是的,发生内存泄露会引发内存分配不足,最终崩溃
MySQL方案、培训、支持
MySQL 用户组