(2008) MySQL client ran out of memory怎么解决

发布网友

我来回答

4个回答

懂视网

1. 查看数据库日志

2. 查看慢查询

3. 查看系统日志

4. 查看监控

 

2017-01-03 03:03:48 0 170103 03:03:45 mysqld_safe Number of processes running now: 0

170103 03:03:45 mysqld_safe mysqld restarted   --异常重启

[Note] /usr/sbin/mysqld (mysqld 5.6.25-log) starting as process 104767 ...

2017-01-03 03:03:48 7f9bcd3f4720 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the opt

ion innodb_use_sys_malloc and with the InnoDB‘s internal memory allocator.

2017-01-03 03:03:48 104767 [Note] InnoDB: Using atomics to ref count buffer pool pages

2017-01-03 03:03:48 104767 [Note] InnoDB: The InnoDB memory heap is disabled

2017-01-03 03:03:48 104767 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins

2017-01-03 03:03:48 104767 [Note] InnoDB: Memory barrier is not used

2017-01-03 03:03:48 104767 [Note] InnoDB: Compressed tables use zlib 1.2.3

2017-01-03 03:03:48 104767 [Note] InnoDB: Using Linux native AIO

2017-01-03 03:03:48 104767 [Note] InnoDB: Using CPU crc32 instructions

2017-01-03 03:03:48 104767 [Note] InnoDB: Initializing buffer pool, size = 4.0G

2017-01-03 03:03:48 104767 [Note] InnoDB: Completed initialization of buffer pool

2017-01-03 03:03:48 104767 [Note] InnoDB: Highest supported file format is Barracuda.

2017-01-03 03:03:48 104767 [Note] InnoDB: Log scan progressed past the checkpoint lsn 3021323914038

2017-01-03 03:03:48 104767 [Note] InnoDB: Database was not shutdown normally!

2017-01-03 03:03:48 104767 [Note] InnoDB: Starting crash recovery.

 

通过查看open-falcon 监控,发现数据库重启的时间内存使用率100%。mysqld_safe具有安全保护机制,对于异常的关闭数据库,mysqld_safe 进程可以把mysqld 进程拉起来。我们当时的情况是,数据库被拉起来了,但是主库参数设置的是只读,影响了部分业务。后续调整了参数,把主库的只读参数设置为read_only=off。当然罪魁祸首是因为慢查询引起的。找到慢查询,提交给开发同事,修改sql之后,稳定下来,不过内存也确实太紧张了,没法再挺着了,准备扩一点内存,这个费用没法再节省了。

本文出自 “roidba” 博客,请务必保留此出处http://roidba.blog.51cto.com/12318731/10527

生产环境mysql内存溢出重启简单分析

标签:生产环境mysql内存溢出重启

热心网友

  错误编号:2008
  问题分析:
  MySQL client ran out of memory 错误指向了MySQL客户mysql。这个错误的原因很简单, 内存泄漏,直到耗尽内存,客户没有足够的内存存储全部结果。
  解决方法:
  释放占用的内存。

  
run out of 意为“用完”,主语只能是人。
例句:
He has run out of red ink.
他的红墨水用完了。
We run out of coal, and had to burn wood.
我们的煤用完了,所以不得不烧柴。
If we run out of money, we can sell some of the procts in Guangzhou.
如果我们的钱用完了,可以在广州卖掉一些产品。

热心网友

mysql的客户端出现了内存溢出,我建议使用mysql的可视化的sqlyog,以及mysql自己的doc模式
cmd下mysql -uroot -p1234追问可视化sqlyog是什么东西 doc模式怎么改呢

追答SQLyog是一款可视化界面操作的mysql工具,doc模式就是安装mysql的时候自带的命令行工具类似doc

热心网友

在linux下的mysql 出现内存溢出 ,应该select 语句的时候 用limit offset
或者 将my.cnf中的
max_heap_table_size 修改成更大的空间,并且重启 client客户端。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com