2

最近我在 MySQL 错误日志中发现“内存不足”错误,但主机仍然有足够的物理内存和交换空间,根据free -k

             total       used       free     shared    buffers     cached
Mem:       4087156    3842396     244760          0     615840    2031416
-/+ buffers/cache:    1195140    2892016

[错误] 内存不足;检查 mysqld 或其他进程是否使用了所有可用内存;如果没有,您可能必须使用 'ulimit' 以允许 mysqld 使用更多内存,或者您可以添加更多交换空间

我担心有一个导致内存泄漏的 MySQL 错误。

MySQL的内存使用量会动态增长吗?如果是,什么因素或事件会导致 MySQL 分配更多内存?MySQL 内存不足时可能产生的影响以及如何避免?

这是机器配置:OS Linux 2.6.18-128.el5PAE i386

MySQL 服务器版本:5.0.50-enterprise-gpl-log MySQL Enterprise Server (GPL)

/etc/my.cnf:

[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
datadir         = /opt/mysql
skip-locking
key_buffer = 1G
max_allowed_packet = 2M
table_cache = 256
sort_buffer_size = 1M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache = 32
query_cache_size= 32M
thread_concurrency = 16
max_heap_table_size = 1G

auto_increment_increment = 10
auto_increment_offset = 1

server-id       = 20
log-warnings
log-slow-queries
skip-innodb
skip-slave-start
core-file
4

0 回答 0