Я пытаюсь подключиться к базе данных MySQL, используя драйвер Py MySQL и Flask -SQLAlchemy. Однако я получаю следующую ошибку:
sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (1045, "Access denied for user 'root'@'localhost' (using password: YES)")
(Background on this error at: http://sqlalche.me/e/e3q8)
Я могу подключиться к базе данных, используя только Py MySQL. Вот мой Flask код API.
from flask import Flask, json, Response
import pymysql
from flask_sqlalchemy import SQLAlchemy
from flask_cors import CORS
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@host/dbname'
db = SQLAlchemy(app)
CORS(app, resources=r'/*')
class SomeTable(db.Model):
__tablename__ = 'some_table'
id = db.Column('id', db.Integer, primary_key=True)
name = db.Column('name', db.String(255), nullable=False)
@app.route('/data', methods=['GET'])
def get_data():
my_list = SomeTable.query.all()
data = json.dumps(my_list)
flaskResponse = Response(data)
flaskResponse.headers["Content-Type"] = "application/json"
flaskResponse.headers["Access-Control-Allow-Origin"] = ORIGIN
return flaskResponse
if __name__ == "__main__":
app.run(debug=True)
Я не уверен, где я ошибаюсь. Буду очень признателен, если кто-нибудь поможет мне решить эту проблему.