sqlalchemy_track_modifications sqlalchemy_database_uri query app python mysql flask sqlalchemy pymysql

python - sqlalchemy_database_uri - flask sqlalchemy query



Flask-SQLAlchemy PyMySQL-Error de acceso denegado (1)

Sistema operativo: Versión RHEL Python: 3.6 Versión SQLAlchemy: 1.1.10 Versión PyMySQL: 0.7.11 MySQL Distrib: 5.7.17-13

import pymysql conn = pymysql.connect(host=''localhost'', port=3306, user=''testuser'', passwd=''###########'', db=''mysql'') cur = conn.cursor() cur.execute("SELECT Host,User FROM user") print(cur.description) print() for row in cur: print(row) cur.close() conn.close()

Cuando trato de ejecutar el código anterior recibo el siguiente mensaje de error, pero todavía puedo conectarme a mysql usando la misma cuenta y contraseña a través de la línea de comando.

pymysql.err.OperationalError: (1045, "Access denied for user ''testuser''@''127.0.0.1'' (using password: YES)")

Traté de buscar en todo el internet este mensaje de error pero no pude resolver el problema real. Realmente apreciaría si alguien pudiera ayudarme a solucionar este problema.


Encontré el problema: el complemento de autenticación predeterminado para MySQL 5.7 era sha256, que no es compatible con PyMySQL. Lo cambió a mysql_native_password y eso solucionó el problema.