Flask mysql操作错误:(2059,<;NULL>;)

Flask mysql操作错误:(2059,<;NULL>;),flask,mysql-python,Flask,Mysql Python,当尝试连接到我的本地服务器(创建数据库条目-在flask应用程序中注册新用户)时,我遇到以下错误: **_mysql_exceptions.OperationalError: (2059, <NULL>)** MySQL配置: # Config MySQL app.config["MYSQL_DATABASE_HOST"] = "localhost" app.config["MYSQL_DATABASE_USER"] = "root" app.config["MYSQL_DATAB

当尝试连接到我的本地服务器(创建数据库条目-在flask应用程序中注册新用户)时,我遇到以下错误:

**_mysql_exceptions.OperationalError: (2059, <NULL>)**
MySQL配置:

# Config MySQL
app.config["MYSQL_DATABASE_HOST"] = "localhost"
app.config["MYSQL_DATABASE_USER"] = "root"
app.config["MYSQL_DATABASE_PASSWORD"] = "<password_ph>"
app.config["MYSQL_DATABASE_DB"] = "myfirstdb"
app.config["MYSQL_DATABASE_CURSORCLASS"] = "DictCursor"
# init MYSQL
mysql = MySQL(app)
#config my db
db = mysql.connector.connect(
   host="localhost",
   user="root",
   passwd="<password_ph>",
   database='myfirstdb'
)
mysql = MySQL(app)
错误似乎会在以下行中弹出:

cur = mysql.connection.cursor()
你知道还有什么会导致这个错误吗?提前非常感谢

这里也有同样的错误。 在我的例子中,问题是MySql的版本

Mysql版本8与flask sqlalchemy不兼容。


我将其降级至5.7.22,一切正常。

谢谢@dominik remetei,如果您不想降级MySQL,您可以使用MySQL.connector。此外: pip安装mysql连接器python

下面是MySQL到Python的导入:

from flask_mysqldb import MySQL
from flask import Flask
from flask_mysqldb import MySQL
import mysql.connector
MySQL配置:

# Config MySQL
app.config["MYSQL_DATABASE_HOST"] = "localhost"
app.config["MYSQL_DATABASE_USER"] = "root"
app.config["MYSQL_DATABASE_PASSWORD"] = "<password_ph>"
app.config["MYSQL_DATABASE_DB"] = "myfirstdb"
app.config["MYSQL_DATABASE_CURSORCLASS"] = "DictCursor"
# init MYSQL
mysql = MySQL(app)
#config my db
db = mysql.connector.connect(
   host="localhost",
   user="root",
   passwd="<password_ph>",
   database='myfirstdb'
)
mysql = MySQL(app)

谢谢@public\u void。我在MySQL文档中找到了,并最终使用MySQL.connector模块中的connect()方法来配置应用程序,之后它运行良好
conn=mysql.connector.Connect(host='localhost',user='root',password='',database='myfirstdb')