mysql - 如何解决错误 "#2006 - MySQL server has gone away"

标签 mysql

我正在运行 MySQL Community Server 5.6.16,我有一个大小为 290MB 的 mysql 转储文件,

我有以下 my.ini 设置

innodb_lock_wait_timeout = 60000000
max_allowed_packet = 8000000000M

当我尝试从转储文件恢复数据库时,出现以下错误

#2006 - MySQL server has gone away 

如何解决此错误。

  RAM Size: 3.00 GB

    my.ini 
    ----------------
    key_buffer = 16M
    max_allowed_packet = 1M
    sort_buffer_size = 512K
    net_buffer_length = 8K
    read_buffer_size = 256K
    read_rnd_buffer_size = 512K
    myisam_sort_buffer_size = 8M


    innodb_buffer_pool_size = 16M
    innodb_additional_mem_pool_size = 2M
    ## Set .._log_file_size to 25 % of buffer pool size
    innodb_log_file_size = 5M
    innodb_log_buffer_size = 8M
    innodb_flush_log_at_trx_commit = 1
    innodb_lock_wait_timeout = 60000000

my.ini file download link

最佳答案

更改如下:

max_allowed_packet = 64M
innodb_buffer_pool_size = 1536M

还添加与 ini 文件末尾相同的以下行。

[mysqldump]
quick     ##it is already there in your file.
max_allowed_packet = 80000M # change it to 64M as this is more than your total memory.

完成这些更改后,重新启动 mysql 并立即检查。

如果仍然出现错误,请分享错误日志文件中今天的错误日志。

关于mysql - 如何解决错误 "#2006 - MySQL server has gone away",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22171524/

相关文章:

mysql - hibernate 条件 : selection from two tables with Foreign key relationship?

python models.py syncdb 不起作用

mysql - 使用 seed_dump gem 获取所有模型的 ID

mysql - MySQL VB.Net 中的时间范围验证

mysql - 根据每个字段的第一条记录内容重命名字段

php - 手机间隙 : populate local database with data from external server

asp.net - 算术运算导致溢出

mysql - 更新完整的表,交换列

python - SQLObject 下的数据库更改

MySql存储过程WHERE "variabilised"根据参数