问题描述

在迁移或备份数据的时候, 对Confluence数据库执行 mysqldump,出现以下问题

mysql dump: “Error 2020: Got packet bigger than 'max_allowed_packet' bytes when dumping table  PLUGINDATA at row”

问题分析

这是因为Conbfluence的插件存储在数据库当中, 如果超过了mysql 的 max_allowed_packet 设置,就出dump不出来

不仅是dump, 导入数据的时候也会遇到这个问题


解决办法

解决办法有两个

  • 修改mysql的配置文件,增加 max_allowed_packet的设置 ,修改完后需要重启mysql才生效  

    my.cnf

    max_allowed_packet=512M
    CODE
  • 第二种办法是 执行dump 命令的时候直接加上 max_allowed_packet参数 

    mysqldump -h <数据库主机地址> -u <用户名> -p --single-transaction --max_allowed_packet=512M  <Confluence数据库> > conf_db_bak.sql 
    CODE