【发布时间】:2018-11-18 03:33:41
【问题描述】:
所以,我已经为我的 RDS 实例创建了一个新的安全组 rds_access,其中 Inbound-> >Source 参数设置为 0.0.0.0/0,并在 RDS 仪表板的“安全组”部分更新了该实例: rds_access (sg-xxx)(活跃)
在我的连接的 MySQL Workbench“编辑”部分中,在“远程管理器”选项卡中,我已将“本机 Windows 远程管理”单选按钮的值设置为活动,并将“主机名”参数设置为 0.0.0.0。
实例与数据库连接成功。
在我在 pythonanywhere 上运行的网络应用程序中,我仍然收到此错误:
OperationalError: (2003, "Can't connect to MySQL server on 'bachelor-diploma-db.cx0stetemb8k.eu-central-1.rds.amazonaws.com' ([Errno 111] Connection denied))
在将我的应用程序上传到 pythonanywhere 之前,我已经在 localhost 上对其进行了测试,一切正常。我还重新启动了 RDS 实例和 MySQL 数据库。
请告诉我我做错了什么以及如何解决这个问题?
更新:
为了连接到 MySQL 服务器,我使用flask-mysql。这是sn-p的代码:
from flaskext.mysql import MySQL
api = Api(app)
mysql = MySQL()
app.config['MYSQL_DATABASE_USER'] = 'user'
app.config['MYSQL_DATABASE_PASSWORD'] = 'password'
app.config['MYSQL_DATABASE_DB'] = 'bachelor_diploma_db'
app.config['MYSQL_DATABASE_HOST'] = 'bachelor-diploma-db.cx0stetemb8k.eu-central-1.rds.amazonaws.com'
mysql.init_app(app)
然后在我使用的方法中:
conn = mysql.connect()
【问题讨论】:
-
您可能希望向我们展示您用于连接 MySQL 的 Python 代码。
标签: mysql amazon-web-services remote-access amazon-rds pythonanywhere