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使用内存机制造成的?还是一些数据库真的占用了大量内存?是内存泄漏?

Taxonomy upgrade extras:

Innodb_buffer_pool_pages_*
key_*
qcache_*
Created_tmp_*

主要是以上几个部分。
某些版本的mysqld可能由于bug会引发内存泄露,需要监控一下内存使用增长情况。
对数据库来说,一般使用越多内存,那么性能可能越好,不需要过度担心。但是如果发生内存资源不够,导致mysqld崩溃的情况,那就需要注意了。

MySQL方案、培训、支持
MySQL 用户组

数据库本来就是越占内存,性能越好!如果系统内存占用显示正常,那数据库不会占用大量内存,如果是内存泄漏,那应该会崩溃的吧??

是的,发生内存泄露会引发内存分配不足,最终崩溃

MySQL方案、培训、支持
MySQL 用户组