コンピューターに新しいMySQLインスタンスをセットアップし、ユーザーを追加するたびに認証タイプをcaching_sha2_password
に設定します。
これは、認証タイプを「Standard
」に設定しても発生し、ユーザーを保存するときに変更されます。また、デフォルトの認証プラグインを「mysql_native_password
」に変更しましたが、それでも引き続き実行されます。
caching_sha2_password
を使用すると、.netコアからデータベースに接続できず、次のエラーが表示されます。
MySqlException:認証メソッド 'caching_sha2_password'は利用可能なプラグインのいずれでもサポートされていません
標準認証タイプのユーザーを保存するにはどうすればよいですか?
今日も同じ問題がありました。私がそれを修正するために見つけた唯一の方法は:
問題が解決するはずです。
MySQL Workbenchでも実行できます。
「ユーザーとプライバシー」->「アカウントの追加」->認証タイプ:「標準」
このユーザーは、デフォルトのログイン、つまりphpMyAdminでログインできるようになりました。
import mysql.connector
def connect():
conn = mysql.connector.connect(Host='localhost',
database='mydb',
user='root_new',
password='root_new')
if conn.is_connected():
print('Connected to MySQL database')
if name == 'main':
connect()
Output : Connected to MySQL database
Follow the Screenshots ????
1.Stop database server in preferences for MacOS.
2.initialise DB with legacy authentication.
3.Open mysqlWorkBench and Create a new user with standard authentication.
4.Create a new schema(DB) in sqlWorkbench.
5.Execute python Code in Eclipse.
走る
mysql> CREATE USER ‘username’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
MySQL Workbench 8.0 CEを使用していて、まだ苦労している人のために、以下が私のために働いた:
ユーザーを削除して再度追加する必要がありました。ユーザーの認証タイプを自動的にcache_sha2_passwordに戻すことはせず、標準のままにしました。