Можно подключиться к базе данных через командную строку, но не в Python Script? - PullRequest
0 голосов
/ 08 ноября 2018

Надеюсь, название довольно понятно. Я установил базу данных и веб-сервер на одном компьютере, используя Amazon RDS и EC2. Я запускаю скрипт Python в папке cgi на машине, и мне не удается подключиться к базе данных. Ошибки имеют порядок: _mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' (111)")

Я пробовал это с mySQLdb и _mysql безуспешно. Что я не могу понять, так это то, что я могу успешно подключиться к клиенту mysql через командную строку с mysql -u username -p -h edutechfinal.cqk0lckbky4e.us-east-2.rds.amazonaws.com, но не внутри скрипта.

Это то, что я пробовал в скрипте 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")

1 Ответ

0 голосов
/ 08 ноября 2018

Экземпляр RDS не работает на экземпляре EC2, это отдельные "машины". Из экземпляра EC2 вместо использования петлевого адреса 127.0.0.1, который предполагает, что MySQL работает на локальном экземпляре EC2, просто используйте имя хоста edutechfinal.cqk0lckbky4e.us-east-2.rds.amazonaws.com, как вы делаете это с клиентом MySQL.

...