3

我正在尝试使用以下命令将我的 .sql 转储从本地机器导入 AWS RDS db 实例:

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqldump --host=localhost 
--user=root --password=admin e_learning_system | mysql 
--host=mydbinstance.cyz1k1vacvdd.us-east-1.rds.amazonaws.com 
--user=root --password=adminadmin e_learning_system

但它抛出了这个错误:

ERROR 2003 (HY000): Can't connect to MySQL server on 'mydbinstance.cyz1k1vacvdd.us-east-1.rds.amazonaws.com' (10060) mysqldump: Got errno 22 on write

我该如何纠正?

4

5 回答 5

5

是的,Amazon Beanstalk 应用程序和 RDS 安全组必须相同才能将应用程序连接到数据库实例。

右键单击数据库实例并使用 beanstalk 应用程序添加一个新的安全组..

于 2012-12-13T18:08:46.670 回答
5

如果有人仍在寻找像我一样的解决方案,我设法通过在我的 RDS 实例中设置安全组来完成它。只需转到该安全组,您将在“安全和网络”部分找到单击。在您进入该安全组页面后,编辑入站规则,将源0.0.0.0/0临时更改为(意味着全部接受),然后导入您的数据库转储。那应该行得通。但请记住,您可能希望在生产中将其还原回此设置。

于 2014-06-22T14:08:31.760 回答
1

我更喜欢使用 MySQL 工作台。它比命令行方式更容易和用户友好。

它提供了一个简单的 GUI。

MySQL 工作台或 SQL Yog。

这些是我所做的步骤。

1) 安装 MySQL 工作台。

2) 在 AWS 控制台中,您的 RDS 实例必须有一个安全组。向该组添加入站规则以允许来自您的计算机的连接。这很简单。添加您的 IP 地址。

3) 打开 MySQL 工作台,添加一个新的连接。

4) 给连接起一个您喜欢的名称。

5) 选择连接方式——标准 TCP/IP

6) 在主机名 (mydbinstance.cyz1k1vacvdd.us-east-1.rds.amazonaws.com) 字段中输入您的 RDS 端点。

7) 端口:3306

8)用户名:主用户名(您在创建RDS实例期间创建的用户名)(root)

9)密码:主密码(admin admin)

10) 单击测试连接以检查您的连接。

11) 如果连接成功,单击确定。

12) 打开连接。

13) 你会在那里看到你的数据库'e_learning_system'。

14) 现在您可以将 mysqldump 文件导出到该数据库。转到-> 服务器。单击数据导入。

15) 您可以通过简单地打开一个空白的SQL文件并输入基本的SQL命令,如使用数据库,从表中选择*来检查数据是否已经迁移;

于 2014-06-04T05:02:21.110 回答
0

错误 2003 表示没有连接到 mysql 服务器。检查您是否允许连接到 RDS 安全组中的 RDS 的计算机。

于 2012-08-03T12:19:46.133 回答
0

我遇到了同样的错误,我通过将 mysql.exe... 添加到我正在连接的机器的防火墙来解决它。

于 2014-11-08T18:07:59.367 回答