每次2-3分钟后我就有问题了
mysql> show tables;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 57我真的找不到为什么会发生这种情况。我看到了我的错误日志上面写着
120419 0:36:03 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
InnoDB: Last MySQL binlog file position 0 93884, file name /EBSmnt/mysql/mysql-bin.000233
120419 0:36:04 InnoDB: Started; log sequence number 1692 2597076235
120419 0:36:04 [Note] Event Scheduler: Loaded 0 events
120419 0:36:04 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.43-enterprise-gpl-advanced-log' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Enterprise Server - Advanced Edition (G有人能告诉我如何处理生产服务器上的Scenario.It吗?
拉姆是7GB的。
和InnoDB在my.cnf中的配置是
innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 3G
innodb_data_home_dir = /lvm/mysql
innodb_data_file_path = ibdata1:80G:autoextend
innodb_log_buffer_size = 8M
innodb_log_file_size = 1300M
innodb_log_files_in_group = 3发布于 2012-04-19 05:38:26
我怀疑您的最大值和一个大的文本/BLOB字段的存在。
我在过去回答了两个问题,因为max_allowed_packet太小,mysql崩溃了。
我建议将max_allowed_packet提高到最大值,即1GB。
如果有TEXT/BLOB字段,则可能输入了一个文本/BLOB字段,该字段太大,无法通过MySQL包或InnoDB日志文件传递。您可能需要将您的innodb日志文件的大小调整为最大值,即2047M。以下是要做的事情:
步骤01)将其添加到/etc/my.cnf
[mysqld]
max_allowed_packet=1G
innodb_log_file_size=2047M注意:在Google中,您不能输入1G,必须使用值1073741824
第二步) service mysql stop
(步骤03) rm -f /var/lib/mysql/ib_logfile[01]
第04步) service mysql start
发布于 2012-12-04 09:13:46
从问题中显示的MySQL错误日志中可以看出,MySQL服务器没有任何问题。
MySQL客户端提示中的错误消息:
ERROR 2006 (HY000): MySQL server has gone away...is是因为两个连接超时变量,即wait_timeout、interactive_timeout。
如果您的连接空闲超过interactive_timeout秒,您的连接将自动断开。
https://dba.stackexchange.com/questions/16737
复制相似问题