我正在尝试使用 mysqldump 在 Amazon RDS 服务器上导入一个表。在恢复期间,我收到以下错误消息:
ERROR 1153 (08S01) at line 925: Got a packet bigger than 'max_allowed_packet' bytes
然后我添加--max_allowed_packet=128M
到恢复命令,现在得到以下错误:
ERROR 2006 (HY000) at line 925: MySQL server has gone away
这是 mysqldump 恢复命令:
mysql --max_allowed_packet=128M -uroot -p -h db-name.123456789012.us-east-1.rds.amazonaws.com dbname < /srv/tmp/dbname.sql
当我尝试在当前会话期间全局设置 max_allowed_packet 和 net_buffer_length 而不必重新启动 RDB 实例时,我收到以下错误:
ERROR 1227 (42000) at line 1: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
尝试向用户添加“SUPER”权限也失败。
要更改 Amazon RDS 中的动态选项,您必须修改与数据库实例关联的数据库参数。
编辑选项max_allowed_packet值,将其设置为
1073741824
。保存后,应立即应用它,因为它是一个动态选项。
之后,您可以通过登录 RDS 实例并运行来验证更改
验证后,您可以继续加载 mysqldump。