i'm trying to get my python program to insert data into MySQL and i followed a guide however i keep getting the error below.
"Authentication plugin '{0}' is not supported".format(plugin_name)) mysql.connector.errors.NotSupportedError: Authentication plugin 'caching_sha2_password' is not supported"
have i missed a setting in mysql server or does python not support this yet?
I think i can just change the password type but mysql doesn't want to let me for some reason all users with caching_sha2_password can't be changed and when i create a new user and select SHA256 Password I get the error creating account @% the password hash doesn't have the expected format. check if the correct password algorithm is being used with the PASSWORD() function.
#!/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()
I managed to fix this. In the end I was using a version of python in Anaconda which just wouldn't install version 8.0.11 of the python connector, I managed to get 8.0.11 installed on my vanilla python 3.6.5 using windows PowerShell (in admin privileges) and using pip install MySQL-connector-python
(I think I also had to update pip from 9 to 10.
Installs the drive for python3.
python3 -m pip install mysql-connector-python
Installs the drive for the default python preinstalled on your system by the manufacturer.
python -m pip install mysql-connector-python
I had the same problem
"Authentication plugin '{0}' is not supported".format(plugin_name)) mysql.connector.errors.NotSupportedError: Authentication plugin 'caching_sha2_password' is not supported"
This happens because your Python connector does not support the authentication plugin caching_sha2_password
and you need to update it. I fixed it by installing the correct Python connector from MySQL official site. Be sure to download the correct connector based on your operating system, MySQL version and the Python version you use.
Seems this package works for me: sudo pip install MySQL-connector-python
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With