【數據庫學習】——糾錯:mysql Authentication plugin ‘caching_sha2_password‘ is not supported

目錄

1、環境介紹

2、問題描述

3、原因分析

4、 解決方案

1)方法一:直接改成mysql_native_password驗證方式

2)方案二:?利用sql命令將驗證機制修改

① 打開命令行窗口——cmd

② 登錄mysql數據庫

③ 查看不同用戶名的身份驗證方式select user,plugin from mysql.user;

?④ 將caching_sha2_password修改為mysql_native_password驗證方式

⑤ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';?語句解釋

3)方案三 :直接將mysql版本降低為8.0以下


1、環境介紹

Windows

Python3.9

MySQL8.0.29

2、問題描述

在利用Python創建數據池的時候,出現這個問題

代碼為:

import mysql.connector.pooling# 定義連接需要的參數,用字典封存,私有參數
__config = {"host":"localhost","port":3306,"user":"root","password":"root","database":"studentTable"
}# 創建連接池,定義最大連接數
try:pool = mysql.connector.pooling.MySQLConnectionPool(**__config,pool_size=10)
except Exception as e:print("創建連接池出現異常:",e)

?

3、原因分析

?使用客戶端鏈接mysql數據庫,如果數據庫版本高于8.0,可能出現以上問題,因為8.0以前默認使用mysql_native_password身份驗證機制,8.0以后默認使用caching_sha2_password方式,因此需要將其改成mysql_native_password驗證機制

4、 解決方案

1)方法一:直接改成mysql_native_password驗證方式

【數據庫bug修復】——Authentication plugin ‘caching_sha2_password‘ is not supported_有情懷的機械男的博客-CSDN博客目錄原因連接數據庫的時候出現這個問題的解決方法創建數據庫連接池時解決方法原因使用客戶端鏈接mysql數據庫,如果數據庫版本高于8.0,可能出現以上問題,因為8.0以前默認使用mysql_native_password身份驗證機制,8.0以后使用caching_sha2_password方式連接數據庫的時候出現這個問題的解決方法conn = mysql.connector.connect(host = "localhost", user = "root", pashttps://blog.csdn.net/qq_45769063/article/details/121986314

在參數設置的后面添加這行,修改驗證機制??

?"auth_plugin": 'mysql_native_password'

import mysql.connector.pooling# 定義連接需要的參數,用字典封存,私有參數
__config = {"host":"localhost","port":3306,"user":"root","password":"root","database":"studentTable","auth_plugin": 'mysql_native_password'
}# 創建連接池,定義最大連接數
try:pool = mysql.connector.pooling.MySQLConnectionPool(**__config,pool_size=10)
except Exception as e:print("創建連接池出現異常:",e)

注:這個方案之前是可行的,但是這次沒有解決,于是有了方案二

2)方案二:?利用sql命令將驗證機制修改

mysql錯誤:this authentication plugin is not supported_阿冬哥的博客-CSDN博客this authentication plugin is not supported應用程序連接mysql docker一直報錯:this authentication plugin is not supported。 google發現,原來是mysql新版本(8.0以上)將root用戶使用的plugin更新成caching_sha2_password。 登錄mysql輸入如下命令可以看...https://blog.csdn.net/c359719435/article/details/80432508【糾錯】——mysql Authentication plugin ‘caching_sha2_password‘ is not supported問題處理_有情懷的機械男的博客-CSDN博客mysql Authentication plugin ‘caching_sha2_password’ is not supported問題處理使用mysql8.0版本,登錄失敗,提示 Authentication plugin ‘caching_sha2_password’ is not supported。原因是在MySQL 8.0以后,默認的密碼加密方式是caching_sha2_password而不是mysql_native_password。解決方法:1.登錄mysql數據庫 myshttps://blog.csdn.net/qq_45769063/article/details/122322667

① 打開命令行窗口——cmd

② 登錄mysql數據庫

mysql -uroot -p

?

③ 查看不同用戶名的身份驗證方式select user,plugin from mysql.user;

select user,plugin from mysql.user;

可以看到數據庫有5個用戶名(user),因為我們創建數據池的時候用的是root用戶名,所以我們看一下root用戶名的身份驗證方式(plugin),root有兩個用戶名,且有一個驗證方式是caching_sha2_password,因此我們需要修改它

?

?④ 將caching_sha2_password修改為mysql_native_password驗證方式

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

?

再運行select user,plugin from mysql.user;查看不同用戶名的身份驗證方式,如下圖所示,可以發現兩個root用戶名的驗證方式都已經修改成為mysql_native_password了。

?

⑤ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';?語句解釋

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

這行代碼有兩層含義,第一:修改root的密碼為’root’,摒棄原來的舊密碼。第二:使用mysql_native_password對新密碼進行編碼。

注:利用這種方式解決了我的問題?

3)方案三 :直接將mysql版本降低為8.0以下

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/255343.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/255343.shtml
英文地址,請注明出處:http://en.pswp.cn/news/255343.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

xcode中用pods管理第三方庫轉

安裝pods :http://www.cnblogs.com/wangluochong/p/5567082.html 史上最詳細的CocoaPods安裝教程 --------------------------------------------- 第一步:Cmmand+空格,搜索"終端",使用cd命令進入到我們項目…

Val編程-界面編程

由于示教盒是一個黑白的分辨率為(14*40)的液晶屏,用戶交互不是很好,界面不友好。而且沒有鼠標導航與觸摸屏。 界面編程函數 1.void cls() 2.void title(string sText) 3.void put(string sText), void put(num nValue) 4.void put…

【機器學習筆記四】分類算法 - 邏輯回歸

參考資料 【1】 Spark MLlib 機器學習實踐 【2】 統計學習方法 1、Logistic分布 設X是連續隨機變量,X服從Logistic分布是指X具有下列分布函數和密度函數 ,。其中u為位置參數,γ為形狀參數。如下圖: 分布函數以(u,1/2)為中心…

FPFH+ICP點云配準

A, UniformSampling降噪B, ISS計算關鍵點, FPFH特征在FeatureCloud::setInputCloud中讀入點云,并調用processInput進行處理:processInput處理包括: 1, computeSurfaceNormals () 使用NormalEstimation計算得到表面法向量2, computeLocalFeatures () FPFHEstimationKdTreeIS…

【python 學習】——pycharm終端解釋器和Python解釋器配置

目錄 1、pycharm終端運行的時候前面帶有PS,是什么意思,怎么變成cmd? 1)File——settings 2)tools——terminal——shellPath 2、pycharm怎么切換不同的Python解釋器? 1)File——settings 2&#xff09…

在linux下實現mysql自動備份數據

使用的系統為CentOS,mysql版本為5.6 備份功能主要利用以下功能實現: mysql命令中的mysqldump命令 linux下腳本編寫 linux下crontab定時任務的使用 首先確定你要存放腳本的目錄和存放備份數據的目錄 首先進行以下修改(因為在命令行或者腳本中寫…

面向未來編程

我們一直以來都知道面向對象編程,面向過程編程。大多數時候還是面向工資編程,面向生活編程。面向任務編程,面向公司編程,面向領導編程。 工資不給力,心里認為委屈;生活有壓力。影響工作情緒。任務完畢就好…

Plotclock

調試程序,運行調試程序,舵機會移動兩只懸臂分別停留在一只水平另一只垂直的位置上。如果差距非常大,可拆下懸臂調節,如果比較接近了,就修改程序第3~6行的四個參數 SERVOFAKTORLEFT 左懸臂垂直位置,SERVOFAK…

js性能優化--學習筆記

《高性能網站建設進階指南》: 1.使用局部變量,避免深入作用域查找,局部變量是讀寫速度最快的;把函數中使用次數超過一次的對象屬性和數組存儲為局部變量是一個好方法;比如for循環中的.length通常可以保存為局部變量。 …

struct和typedef struct在C與C++中用法

struct和typedef struct 分三塊來講述:   1 首先://注意在C和C里不同     在C中定義一個結構體類型要用typedef:     typedef struct Student    {    int a;    }Stu;     于是在聲明變量的時候就可:Stu stu1;(如…

【數據庫學習】——Python實現mysql數據庫SQL文件生成和導入

目錄 1、將mysql數據導出到SQL文件中(數據庫存在的情況) 2、將現有的sql文件數據導入到數據庫中(前提數據庫存在) 3、利用Navicat導出SQL文件和導入SQL文件 1)從數據庫導出SQL文件 2)導入SQL文件到數據…

lfcp——PB使用

場景:記錄以備忘。 1 直接說明 pb連接說明:目前項目共有性能、功能、業務、聯調四個環境。所以pb可以連接四個不同的數據庫。1.copy一份pb程序,修改main.ini文件中的DBCONNECT/DBCONNECT2位new,DBNAME/DBNAME2為oracle數據源中的源…

【重磅】Google官方推出了免費的、中文的、機器學習初級課程。

2019獨角獸企業重金招聘Python工程師標準>>> 機器學習(Machine Learning, ML)是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、算法復雜度理論等多門學科。它是人工智能的核心,是使計算機具有智能的根本途徑,其應用遍及…

市面上常見arduino版本比較

http://arduino.cc/en/Main/Products 詳細鏈接 如果是入門,那么首選UNO R3,方便又省心 如果不是特殊要求,不建議購買2560,因為貴啊 nano是塊很好的控制器,買不買隨你咯 非特殊場合使用不建…

leetcode-114. Flatten Binary Tree to Linked List

Given a binary tree, flatten it to a linked list in-place. For example,Given 1/ \2 5/ \ \3 4 6The flattened tree should look like: 1\2\3\4\5\6思路:遞歸處理,引用二叉鏈表的思想,使用pre記錄上一個分支的指針。Accepted Co…

HALCON示例程序autobahn高速公路車道識別程序剖析

HALCON示例程序autobahn高速公路車道識別程序剖析 小哥哥小姐姐覺得有用點個贊唄! 示例程序源碼(加注釋) *關閉halcon窗口的實時更新 dev_update_window (‘off’) *關閉halcon圖形窗口 dev_close_window () *打開圖形窗口 *dev_open_win…

CSS中的未定義行為,瀏覽器的差異(一)

今天看了張鑫旭大佬的新書的有感吧,記錄一下。 Web標準未對一些場景做出明確規范,所以各大瀏覽器廠家只能根據自己的理解和喜好去實現,表現差異不是瀏覽器的bug,用計算機領域的術語描述為"未定義行為"。 比如一個例子&a…

KVC 和 KVO

作者 沖破繭縛 2015.08.28 16:12* 寫了3967字,被8人關注,獲得了14個喜歡KVC 和 KVO 字數363 閱讀32 評論0 喜歡0KVC (Key Value Coding),鍵值編碼,通過鍵值(字符串)來訪問屬性的機制,來間接修改…

Atmel megaAVR控制器 串行引導Bootloader

開始研究下Bootloader的代碼結構 2015.1.9 粗略看了下,Bootloader主要做了下板卡的初始化 -----> 然后進入for( ; ; )死循環 -----> 循環刷新串口數據 -----> 根據數據做出不同應答 -----> 如果有寫數據,則將數據存入buffer …

MapReduce入門2-流量監控

3、流量監控匯總(使用LongWritable實現) hdfs文件路徑:/tmp/flow.txt 查看文件內容: 13770759991 50 100 25 400 13770759991 800 600 500 100 13770759992 400 300 250 1400 13770759992 800 1200 600 900字符串含義:…