连接到亚马逊rds上的mysql数据库

时间:2013-12-23 19:00:23

标签: python mysql mysql-python amazon-rds

我在Windows 7机器上使用python的MySQLdb模块,并尝试连接到Amazon RDS(SQL Server Express)上的远程数据库。这是我用来建立连接的简单连接方案,但它永远不会起作用:

import MySQLdb

cnx= {'host': 'dbname.xxxxxxxxxxxx.us-west-1.rds.amazonaws.com',
  'username': 'username',
  'password': 'password',
  'db': 'dbname'}

db = MySQLdb.connect(cnx['host'],cnx['username'],cnx['password'], cnx['db'])

当我执行此连接脚本时,它会等待几秒钟(主要是10到15秒),然后发出以下错误:

OperationalError: (2003, "Can't connect to MySQL server on 'dbname.xxxx.us-west-1.rds.amazonaws.com' (10060)")

我之前在localhost上使用过sql server,并且习惯使用相同的方案连接它,并且它始终有效。现在,这是我第一次在亚马逊rds上处理数据库,并且不知道为什么会出现这个错误。请帮忙。感谢。

1 个答案:

答案 0 :(得分:14)

已经7个月了,你可能已经想到了... 这可能是因为您没有将要连接的计算机的IP添加到RDS实例的安全组。首先转到RDS instance详细信息页面,单击指向安全组的链接,然后您应该在页面的bottom找到添加连接主机的IP。