Я играю в GCP App Engine и пытаюсь использовать python для соединения с базой данных MySQL, затем возвращаю / печатаю первую строку определенной таблицы, чтобы при щелчке ссылки на приложение в браузере отображалось что-то подобное:
sub_event_id = 1234567
event_type = 1
date_time = 2019-09-22 00: 00: 00
ip = неизвестно
property_id = 1
contact_id = 1234567
address_id = 1234567
Ниже приведен код, который я использую, и ошибка, которую я получаю после того, как яразвернуть приложение. Может кто-нибудь посоветовать, что я делаю не так? Спасибо.
Вот код в моем файле main.py:
from flask import Flask
import sqlalchemy as sa
app = Flask(__name__)
@app.route('/')
def dbresponse():
engine = sa.create_engine('''mysql+pymysql://{username}:
{password}@{host}:{port}/{db_name}''')
with engine.connect() as conn:
# Execute the query and fetch all results
response = conn.execute(
"SELECT * FROM sub_events "
"LIMIT 1"
).fetchall()
# Print results
for row in response:
print("sub_event_id = ", row[0], )
print("event_type = ", row[1])
print("date_time = ", row[2])
print("ip = ", row[3])
print("property_id = ", row[4])
print("contact_id = ", row[5])
print("address_id = ", row[6], "\n")
engine.dispose()
if __name__ == '__main__':
app.run(host='127.0.0.1', port=8080, debug=True)
Вот код в моем файле app.yaml:
runtime: python
env: flex
entrypoint: gunicorn -b :$PORT main:app
runtime_config:
python_version: 3
Вот код в моем файле require.txt:
Flask==1.1.1
gunicorn==19.9.0
SQLAlchemy==1.3.8
PyMySQL==0.9.3
После запуска gcloud app deploy
и gcloud app browse
, затем нажмитессылка, которая генерируется ...
Я получаю 500 Внутренняя ошибка сервера:
500 Внутренняя ошибка сервера Сервер обнаружил внутреннюю ошибкуи не смог выполнить ваш запрос. Либо сервер перегружен, либо в приложении произошла ошибка.