欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL8.4設(shè)置密碼規(guī)則為mysql_native_password問題

 更新時(shí)間:2024年08月26日 14:33:51   作者:AppleII  
這篇文章主要介紹了MySQL8.4設(shè)置密碼規(guī)則為mysql_native_password問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

MySQL8.4設(shè)置密碼規(guī)則為mysql_native_password

mysql使用的時(shí)候會(huì)有報(bào)錯(cuò):

Plugin 'mysql_native_password' is not loaded

1) 首先確認(rèn)mysql_native_password插件是否已經(jīng)安裝

安裝mysql_native_password插件

INSTALL PLUGIN mysql_native_password SONAME 'mysql_native_password';

如果已經(jīng)安裝,會(huì)顯示該插件已經(jīng)存在

2) 查看插件狀態(tài)

show plugins;

看看mysql_native_password插件的狀態(tài)是不是ACTIVE,如果狀態(tài)值為DISABLED則說明插件沒有激活

3) 修改my.cnf或my.ini配置文件

[mysqld]
mysql_native_password=ON #添加此行

不要添加default_authentication_plugin=mysql_native_password,否則mysql會(huì)無法啟動(dòng)。

4) 重啟mysql服務(wù)

5) mysql命令行查看用戶使用的插件

select user,host,plugin from mysql.user;

6) 修改密碼認(rèn)證方式

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your password';
FLUSH PRIVILEGES; #刷新權(quán)限

MySQL8.4新特性速覽

目前,可以在Oracle官網(wǎng)查看到MySQ 8.4新增的內(nèi)容:

https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/mysql-nutshell.html

這里選一些重點(diǎn)變化項(xiàng)聊一下。

1.MySQL密碼認(rèn)證變更

從 MySQL 8.4.0 開始,mysql_native_password 認(rèn)證插件默認(rèn)不再啟用。

若要啟用,需要在MySQL啟動(dòng)的時(shí)候,添加–mysql-native-password=ON 參數(shù);

或在配置文件中設(shè)置 mysql_native_password=ON。

2.一些系統(tǒng)變量默認(rèn)值變更

MySQL 8.4,還調(diào)整了與 InnoDB 存儲(chǔ)引擎相關(guān)的多個(gè)服務(wù)器系統(tǒng)變量的默認(rèn)值,比如:

innodb_io_capacity

  • 默認(rèn)值改成了10000,之前是200。
  • 控制每秒可用于 InnoDB 后臺(tái)任務(wù)的 I/O 數(shù)。
  • 比如緩沖池中的頁面刷新,或者合并來自更改緩沖區(qū)的數(shù)據(jù)。
  • 如果是 SSD,可設(shè)置 5000 以上。
  • 現(xiàn)在線上MySQL,基本都是SSD,所以默認(rèn)值設(shè)置成10000也合理。

innodb_buffer_pool_instances

  • InnoDB 緩沖池的區(qū)域數(shù),將緩沖池劃分多個(gè)區(qū)域,可以減少不同線程讀取和寫入緩存頁時(shí)的爭用,可提高并發(fā)性。
  • 之前默認(rèn)值是8,如果innodb_buffer_pool_size< 1G,則為1。
  • 從8.4開始,如果innodb_buffer_pool_size<= 1G,則為1;
  • 如果innodb_buffer_pool_size>1G,則是在下面兩個(gè)計(jì)算中,選一個(gè)最小值:
  • innodb_buffer_pool_size innodb_buffer_pool_chunk_size這個(gè)結(jié)果的1/2;
  • 可用邏輯CPU數(shù)量的1/4。

innodb_change_buffering

  • 決定哪些操作會(huì)使用change buffer,有關(guān)change buffer,我們在前面詳細(xì)介紹過:一文弄懂MySQL更改緩沖區(qū)。
  • 之前的版本默認(rèn)值是all,表示innodb_change_buffering會(huì)緩存插入、刪除標(biāo)記操作和后臺(tái)發(fā)生的物理刪除操作。
  • 從8.4開始,默認(rèn)是none,表示不緩存這些修改操作,這個(gè)不太理解,大家可以在留言區(qū)討論,可能考慮什么因素。

3.克隆插件

克隆插件的版本要求放寬,允許在同一大版本號下的不同小版本之間進(jìn)行克隆。

4.組復(fù)制相關(guān)

group_replication_set_as_primary變化

使用group_replication_set_as_primary() 選舉新主節(jié)點(diǎn)前,會(huì)等待正在進(jìn)行的 DDL 語句完成。當(dāng)然,這個(gè)是從8.1開始有的特性。

參數(shù)group_replication_consistency默認(rèn)值變更

默認(rèn)值改成了BEFORE_ON_PRIMARY_FAILOVER,以前是EVENTUAL。

這里補(bǔ)充一下group_replication_consistency幾個(gè)值的介紹:

  • EVENTUAL:事務(wù)提交后會(huì)廣播到集群的多數(shù)節(jié)點(diǎn),然后節(jié)點(diǎn)檢查是否有沖突,如果沒有沖突,則事務(wù)在本地提交,其他節(jié)點(diǎn)異步處理,可能導(dǎo)致讀取到稍舊的數(shù)據(jù)。
  • BEFORE_ON_PRIMARY_FAILOVER:在主節(jié)點(diǎn)故障時(shí),必須等待新主處理完待處理的事務(wù),才能開始響應(yīng)業(yè)務(wù)的讀寫請求,這樣可以保證業(yè)務(wù)讀寫請求不會(huì)讀取到舊數(shù)據(jù)。
  • BEFORE:一個(gè)事務(wù)會(huì)等待之前的事務(wù)執(zhí)行完后再開始執(zhí)行,確保讀取到的數(shù)據(jù)是最新的。
  • AFTER:寫事務(wù)會(huì)等待其更改在所有其他節(jié)點(diǎn)應(yīng)用后才提交,保證后續(xù)事務(wù)讀取已寫入或其他節(jié)點(diǎn)上最新的值。對只讀事務(wù)沒有影響
  • BEFORE_AND_AFTER:會(huì)等待之前的事務(wù)執(zhí)行完后才開始執(zhí)行新事物,并等到事務(wù)在所有節(jié)點(diǎn)應(yīng)用后才提交,確保讀取和提交都具有強(qiáng)一致性。

參數(shù)group_replication_exit_state_action默認(rèn)值變更

group_replication_exit_state_action 默認(rèn)值改成了OFFLINE_MODE,以前是READ_ONLY。

這個(gè)參數(shù)控制了MGR實(shí)例處理故障節(jié)點(diǎn)的方式,有三個(gè)選項(xiàng):

  • 設(shè)置為read_only時(shí),會(huì)把這個(gè)實(shí)例的super_read_only設(shè)置為on;
  • 設(shè)置為offline_mode時(shí),會(huì)把這個(gè)實(shí)例切換到離線模式
  • 設(shè)置為abort_server時(shí),將關(guān)閉MySQL。

我們可以回顧一下MGR的故障檢測流程:


也就是當(dāng)一個(gè)節(jié)點(diǎn)出現(xiàn)故障之后,進(jìn)行g(shù)roup_replication_autorejoin_tries參數(shù)配置的自動(dòng)重連次數(shù)之后。

這個(gè)節(jié)點(diǎn)的行為,之前默認(rèn)情況下,是設(shè)置為super_read_only,現(xiàn)在是會(huì)把實(shí)例切換到離線模式。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MySQL中將逗號分隔的字段轉(zhuǎn)換為多行數(shù)據(jù)的方法

    MySQL中將逗號分隔的字段轉(zhuǎn)換為多行數(shù)據(jù)的方法

    在我們的實(shí)際開發(fā)中,經(jīng)常需要存儲(chǔ)一些字段,它們使用像,?-?等連接符進(jìn)行連接,在查詢過程中,有時(shí)需要將這些字段使用連接符分割,然后查詢多條數(shù)據(jù),今天,我們將使用一個(gè)實(shí)際的生產(chǎn)場景來詳細(xì)解釋這個(gè)解決方案,需要的朋友可以參考下
    2024-04-04
  • 解析MySQL中mysqldump工具的基本用法

    解析MySQL中mysqldump工具的基本用法

    本篇文章是對MySQL中mysqldump工具的基本用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • Shell下實(shí)現(xiàn)免密碼快速登陸MySQL數(shù)據(jù)庫的方法

    Shell下實(shí)現(xiàn)免密碼快速登陸MySQL數(shù)據(jù)庫的方法

    這篇文章主要給大家介紹了在Shell下實(shí)現(xiàn)免密碼快速登陸MySQL數(shù)據(jù)庫的方法,文中通過示例代碼一步步介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來一起看看吧。
    2017-06-06
  • Mysql兩表聯(lián)合查詢的四種情況總結(jié)

    Mysql兩表聯(lián)合查詢的四種情況總結(jié)

    今天小編就為大家分享一篇關(guān)于Mysql兩表聯(lián)合查詢的四種情況總結(jié),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • MySQL數(shù)據(jù)導(dǎo)入導(dǎo)出的三種辦法總結(jié)

    MySQL數(shù)據(jù)導(dǎo)入導(dǎo)出的三種辦法總結(jié)

    當(dāng)我們需要切換數(shù)據(jù)庫或備份數(shù)據(jù)時(shí),導(dǎo)入和導(dǎo)出數(shù)據(jù)庫是一個(gè)常見的操作,下面這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)導(dǎo)入導(dǎo)出的三種辦法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-05-05
  • 一個(gè)簡單的MySQL備份Shell腳本

    一個(gè)簡單的MySQL備份Shell腳本

    這篇文章主要介紹了一個(gè)簡單的MySQL備份Shell腳本,本文直接給出代碼實(shí)例,需要的朋友可以參考下
    2015-07-07
  • MySQL索引優(yōu)化實(shí)例分析

    MySQL索引優(yōu)化實(shí)例分析

    這篇文章主要介紹了MySQL索引優(yōu)化實(shí)例分析,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07
  • Mysql 切換數(shù)據(jù)存儲(chǔ)目錄的實(shí)現(xiàn)方法

    Mysql 切換數(shù)據(jù)存儲(chǔ)目錄的實(shí)現(xiàn)方法

    這篇文章主要介紹了Mysql 切換數(shù)據(jù)存儲(chǔ)目錄的實(shí)現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • MySQL如何修改字段的默認(rèn)值和空值

    MySQL如何修改字段的默認(rèn)值和空值

    這篇文章主要介紹了MySQL如何修改字段的默認(rèn)值和空值,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • mysql創(chuàng)建索引的3種方法實(shí)例

    mysql創(chuàng)建索引的3種方法實(shí)例

    大家應(yīng)該都知道索引的建立對于MySQL數(shù)據(jù)庫的高效運(yùn)行是很重要的,索引可以大大提升MySQL的檢索速度,下面這篇文章主要給大家介紹了關(guān)于mysql創(chuàng)建索引的3種方法,需要的朋友可以參考下
    2023-02-02

最新評論