Per estendere la risposta accettata solo per il collegamento sopra, considera le seguenti modifiche sul tuo attuale pymysql
installare. Con MySQL 8, l'API mysql-python non riconosce i set di caratteri possibilmente più recenti e quindi il KeyError
sollevato .
Per risolvere, individua connectors.py script sotto pymysql
modulo trovato in questa directory:
print(pymysql.__file__)
Backup originale di connectors.py sceneggiatura. Quindi incorpora le seguenti modifiche.
Originale (linee 1268-1269)
self.server_language = lang
self.server_charset = charset_by_id(lang).name
Sostituisci (linee 1268 - 1272)
self.server_language = lang
try:
self.server_charset = charset_by_id(lang).name
except KeyError:
self.server_charset = None
Fai attenzione a includere le schede nascoste nel rientro con le righe sopra.
Riferimento