在 AWS RDS 上托管的数据库上导入 SQL 脚本期间出现 MySql 错误“max_allowed_packet”字节
Posted
技术标签:
【中文标题】在 AWS RDS 上托管的数据库上导入 SQL 脚本期间出现 MySql 错误“max_allowed_packet”字节【英文标题】:MySql Error 'max_allowed_packet' bytes during import SQL script on database hosted on AWS RDS 【发布时间】:2018-12-26 00:20:25 【问题描述】:我在 AWS RDS 上的 mysql 数据库上导入 SQL 文件时遇到问题,在导入 SQL 文件时,初始表被导入然后突然显示错误。
我知道这个错误,我可以通过增加 MySQL 配置中的 max_allowed_packet 大小来解决这个问题,但不是本地 Mysql is AWS RDS show 我该怎么办?
【问题讨论】:
【参考方案1】:看完这篇https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html的文章后,我明白我必须做什么以及如何做。
以下是以下步骤。
1) 进入 RDS 页面并点击左侧导航中的“参数组”文本。
2) 现在点击“创建参数组”橙色按钮创建一个新组。
3) 填写参数组表单“参数组族”应该是你的RDS实例的MySql版本而不是“组名”和“描述”随便你。
4) 新的“参数组”已创建为 “test”,现在对其进行编辑并将 “max-allowed-packet” 增加输入 "10000000" (10 MB) 值应为 Bytes 输入值后不要忘记点击 “保存更改” 按钮和确保值在 1024 字节到 1073741824 字节 (1073 MB)
之间5)现在您可以通过点击“预览更改”按钮查看您的更改。
6) 现在我们必须更改 RDS 实例的“参数组”。所以,修改一个实例并选择我们创建的“参数组”。
7) 现在修改 RDS 实例后,您应该重启它以应用您的更改。
【讨论】:
感谢您的详尽帖子! 很好的答案,有几点需要注意,以防人们像我一样好奇。是的,您需要创建一个新的参数组,您不能编辑默认值,是的,您需要重新启动,否则参数组不会生效 注:如果您要更新附加到数据库的非默认参数组,则不需要重新启动。 使用 RDS 中的 mariaDB,我可以确认非默认参数组附加到 db,不需要重新启动。【参考方案2】:转到 RDS,选择 Parameter Groups 并创建新组/编辑现有组。搜索 max_allowed_packet
并为其输入新值。将此参数组附加到 RDS 实例。
【讨论】:
以上是关于在 AWS RDS 上托管的数据库上导入 SQL 脚本期间出现 MySql 错误“max_allowed_packet”字节的主要内容,如果未能解决你的问题,请参考以下文章
Ubuntu 上托管的 LAMP 应用程序的 AWS SSL 证书
在 ec2 上托管的 apache spark 中使用 AWS EMRFS
有啥方法可以将 AWS Cloudfront 设置为指向静态 IP 地址(在 GoDaddy 上托管的 WP)?