我有以下连接MySQL数据库8.0的设置。
class ProductionAWSConfig:
DEBUG = True
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{user}:{password}@{host}/{db}?charset=utf8mb4'.format(**{
'user': os.getenv('DB_USER', 'ADMIN'),
'password': os.getenv('DB_PASSWORD', 'PASS'),
'host': os.getenv('DB_HOST', '10.0.0.x'),
'db': os.getenv('DB_NAME', 'mydb'),
})
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_ECHO = False
Config = ProductionAWSConfig然而,当我从MySQL数据库中获取数据时,我得到了编码错误。数据库编码如下。
+--------------------------+--------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------+
| character_set_client | utf8mb3 |
| character_set_connection | utf8mb3 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb3 |
| character_set_server | utf8mb4 |
| character_set_system | utf8mb3 |
| character_sets_dir | /usr/share/mysql-8.0/charsets/ |
+--------------------------+--------------------------------+所以,我应该能够连接和获取数据。但是,我不能这样做,因为编码错误。
有人对此有什么建议吗?
发布于 2021-10-06 07:44:09
当密码包含"=“和/或"=”这样的字符串时,PyMySql会给我编码错误。因此,我将密码更新为不包含"=“的内容。
https://stackoverflow.com/questions/69402837
复制相似问题