MySQL填满内存并冻结

时间:2011-03-01 07:43:51

标签: mysql memory innodb freeze fill

我的MySQL服务器(Debian / Lenny)有问题。有时MySQL守护进程填充内存和页面是不可访问的。重启MySQL守护进程有帮助,有时我必须重启整个服务器(不能再用SSH连接)。这是错误日志:

InnoDB: Error: pthread_create returned 12<br/> 110228 23:58:36 InnoDB: Started; log sequence number 0 43695
110228 23:58:36 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.0.51a-24+lenny5' socket: '/var/run/mysqld/mysqld.sock' port: 3306 (Debian).


修改

问题是,我没有使用InnoDB引擎。我的所有表都在MyISAM引擎中。 SHOW ENGINES说:没有InnoDB。我之前做过。

这是my.cnf

  

[客户]
  port = 3306
  socket = /var/run/mysqld/mysqld.sock

     

[mysqld_safe的]
  插座= /无功/运行/ mysqld的/ mysqld.sock
  nice = 0
  log-error = /var/log/mysql/error.log

     

的[mysqld]
  user = mysql
  pid-file = /var/run/mysqld/mysqld.pid
  socket = /var/run/mysqld/mysqld.sock
  port = 3306
  basedir = / usr
  datadir = / var / lib / mysql
  tmpdir = / tmp
  language = / usr / share / mysql / english
  跳过外部锁定
  log-error = /var/log/mysql/error.log
  bind-address = 127.0.0.1
  key_buffer = 16M
  max_allowed_pa​​cket = 16M
  thread_stack = 128K
  thread_cache_size = 8
  myisam-recover = BACKUP
  query_cache_limit = 1M
  query_cache_size = 16M
  expire_logs_days = 10
  max_binlog_size = 100M
  skip-bdb

     

[mysqldump的]
  快速
  引号名称
  max_allowed_pa​​cket = 16M

     

[MySQL的]
  [isamchk] key_buffer = 16M

     

!includedir /etc/mysql/conf.d /

内存配置?我不确定你是什么意思。你能解释一下吗?谢谢!

有人可以向我解释一下吗?谢谢,抱歉我的英语。

1 个答案:

答案 0 :(得分:0)

有一个mysql调优入门脚本:

http://www.day32.com/MySQL/

要下载的脚本的直接地址:http://www.day32.com/MySQL/tuning-primer.sh

在数据库服务器上运行此脚本。它分析了为缓冲区和可用内存分配了多少内存并提供了建议。根据建议减少mysql缓冲区的大小。