【问题标题】:Can Connect to Database via Command Line but not in Python Script?可以通过命令行连接到数据库,但不能在 Python 脚本中连接?
【发布时间】:2019-04-12 10:40:05
【问题描述】:

我希望标题是不言自明的。我使用 Amazon RDS 和 EC2 实例在同一台机器上设置了数据库和 Web 服务器。我在机器的 cgi 文件夹中运行 Python 脚本,但无法连接到数据库。错误顺序为:_mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' (111)")

我用mySQLdb_mysql 尝试过这个,但没有成功。我无法理解的是,我能够通过mysql -u username -p -h edutechfinal.cqk0lckbky4e.us-east-2.rds.amazonaws.com 的命令行成功连接到mysql 客户端,但不在脚本内部。

这是我在 Python 脚本中尝试过的

db = _mysql.connect("127.0.0.1","st4rgut25","pwd","st4rgut25")

db = MySQLdb.connect(host="127.0.0.1",user="st4rgut25",passwd="pwd",db="st4rgut25")

【问题讨论】:

    标签: python mysql amazon-ec2 amazon-rds


    【解决方案1】:

    RDS 实例未在 EC2 实例上运行,它们是单独的“机器”。在 EC2 实例中,不要使用环回地址 127.0.0.1(假设 MySQL 正在本地 EC2 实例上运行),只需像在 MySQL 客户端中那样使用主机名 edutechfinal.cqk0lckbky4e.us-east-2.rds.amazonaws.com

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-25
      • 2019-05-22
      • 2020-12-25
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多