访问数据库就是出现out of memory错误,查看etc/my.cnf文件,发现tmp_table_size=256M,分配给内部临时表的内存太小了,我将它提高到512M。
访问数据库就是出现out of memory错误,查看etc/my.cnf文件,发现tmp_table_size=256M,分配给内部临时表的内存太小了,我将它提高到512M。
默认为16M,可调到64-256最佳,线程独占,太大可能内存不够I/O堵塞
如果动态页面要调大点,100M以上,如果网站大部分都是静态内容,一般64M足够
我们的mysql这两个参数为:
mysql> show global status like ‘created_tmp%‘;
tmp_table_size 33554432 (33.5M)
max_heap_table_size 16777216 (16.7M)
mysql的内存表的大小在my.cnf文件中有定义,需要通过修改配置来修改临时表的大小限制:
[mysqld]
max_heap_table_size=1024M
tmp_table_size=1024M
在mysql配置文件的mysqld节点下,max_heap_table_size指定的是内存表的最大内存,而tmp_table_size指定的是临时表的最大大小。
作者:昵称又重复
链接:https://www.jianshu.com/p/208b8c417adb
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。