4

在将数据库导入我的 amazon rds 实例时,我收到了以下错误:

ERROR 2006 (HY000) at line 667: MySQL server has gone away

我继续尝试将interative_timeout设置更改为更大的数字。但是,它只会让我为会话设置它,而亚马逊不允许为全局会话设置它。

如何将更大的数据库导入我的亚马逊 rds 实例?

4

3 回答 3

0

您可以使用参数组设置简单地更改 RDS 数据库大小设置。大多数 MSQL 设置都在那里。但是,这将需要重新启动实例。您想要的设置是 max_allowed_pa​​cket ,您不仅需要在客户端设置它,还需要在服务器本身上设置它。

于 2014-12-02T14:25:26.127 回答
0

我是这样做的,请注意我的数据库不是很大(最大的是 1.5G)。

首先转储您现有的数据库:

mysqldump [database_name] --master-data=2 --single-transaction --order-by-primary -uroot -p | gzip > /mnt/dumps/[database_name].sql.gz

然后,您可以将此文件传输到有权使用类似scp访问您的 RDS 实例的 Amazon EC2 实例。一旦文件位于您的 Amazon EC2 实例上,您应该使用以下方法提取它:

gzip [database_name].sql.gz -d
#you should now have a file named [database_name].sql in your directory.
mysql -uroot -p -h=[rds-instance]
source [database_name].sql

然后它应该开始导入。此信息位于他们的文档中。

于 2015-03-04T21:45:04.040 回答
0

文档提供了有关如何导入大型数据集的说明。通常,最好的方法是创建平面文件并将它们导入您的 RDS 实例。

我最近完成了一个超过 120GB 的数据库从物理服务器到 RDS 的迁移。我将每个表转储到一个平面 CSV 文件中,然后将较大的文件分成多个 1GB 大小的部分。然后我将每个表导入到 RDS。

于 2014-05-10T05:30:16.533 回答