En el migrations/env.py archivo, encontrará el código responsable de este problema.
config.set_main_option('sqlalchemy.url',
current_app.config.get('SQLALCHEMY_DATABASE_URI'))
Si hay % firma en el SQLALCHEMY_DATABASE_URI , esto provocará un error.
Puede resolver esto editando migrations/env.py y cambiando la línea ofensiva de la siguiente manera
db_url_escaped = current_app.config.get('SQLALCHEMY_DATABASE_URI').replace('%', '%%')
config.set_main_option('sqlalchemy.url', db_url_escaped)
Consulte también la documentación de set_main_option :