我正在尝试让我的python程序将数据插入MySQL,我遵循了指南,但是我不断收到以下错误。
“不支持身份验证插件’{0}’”。格式(plugin_name))mysql.connector.errors.NotSupportedError:不支持身份验证插件’caching_sha2_password’。
我错过了mysql服务器中的设置还是python不支持此设置?
我认为我可以更改密码类型,但是mysql由于某些原因,我不想让我所有具有caching_sha2_password的用户都无法更改,而当我创建新用户并选择SHA256密码时,我得到了创建帐户@%的错误密码哈希没有预期的格式。检查PASSWORD()函数是否使用了正确的密码算法。
#!/user # -*- coding: utf-8 -*- from __future__ import print_function import urllib.request import numpy as np import mysql.connector as mysql from datetime import date, datetime, timedelta cnx = mysql.connect(user='root', password='password', database='powergrid') cursor = cnx.cursor() tomorrow = datetime.now().date() + timedelta(days=1) idfueltype= cursor.lastrowid add_fueltype = ("INSERT INTO fueltype" "(idfueltype, fueltypecol, demand)" "VALUES(%s, %s, %s)") fueltype_data = (idfueltype, 'coal', 10000) cursor.execute(add_fueltype, fueltype_data) cnx.commit() cursor.close() cnx.close()
我设法解决了这个问题。最后,我在Anaconda中使用了一个python版本,而该版本不会安装python连接器的8.0.11版,因此我设法使用Windows PowerShell在我的香草python 3.6.5上安装了8.0.11(具有管理员权限)和使用pip install MySQL-connector- python(我想我还必须将点数从9更新为10。
pip install MySQL-connector- python