溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MYSQL 8如何定住你的set variables

發(fā)布時間:2021-10-25 10:22:13 來源:億速云 閱讀:294 作者:柒染 欄目:大數(shù)據(jù)

今天就跟大家聊聊有關(guān)MYSQL 8如何定住你的set variables,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

在其他數(shù)據(jù)庫中,ORACLE  ,SQL SERVER 中他們的配置的參數(shù)是比較少的,而MYSQL 在其中算是一個“奇葩”。配置參數(shù)之多,配置參數(shù)有的難于理解之多,配置參數(shù)變動可能性之多,是其他數(shù)據(jù)庫沒有的一種情況。

這里面熟悉MYSQL的就會體會到一個情況,就是我的my.cnf 和 我實際的配置的各種變量,可能是不同的,有的變量還好,在MYSQL重啟動后變回my.cnf 的配置,但有的時候變回去后,可能會給你出亂子,或者造成一些你不愿意看到的事情。

一般配置MYSQL的參數(shù)時候,如果我在MYSQL 運行的時候,配置一些系統(tǒng)或全局變量時,如果是決定的事情,我是會將這些配置,寫入到my.cnf 的,下次啟動一般不會有事情,但怕就是忘記了,或一些緊急處理的情況下,可能會造成,系統(tǒng)的配置和 運行的配置不一致的情況。

當(dāng)然你可以寫一個程序來做一些對比的工作,避免一些問題。這里在MYSQL 8 中,系統(tǒng)已經(jīng)為你想好了這樣的情景,并且已經(jīng)有了官方的解決方案。

這個功能就是  SET PERSIST 方式來設(shè)置你的變量

我們舉例 在MYSQL 8 中查看當(dāng)前的 innodb_buffer_pool_size

MYSQL 8如何定住你的set variables

我們要將他更改為 8G 

但如果你忘記在my.cnf中 也將這個配置更改了,那下次重啟動服務(wù)器,就會MY.CNF 文件配置中的“原形”。

MYSQL 8如何定住你的set variables

而MYSQL 8 有了一個新的配置命令 persist ,這個命令可以幫你記錄你曾經(jīng)在系統(tǒng)配置變量的操作歷史,并且?guī)椭阍谙麓螁右矊⑦@個配置加載到運行的環(huán)境。

那這個記錄文件在哪里,就在你的數(shù)據(jù)目錄中,mysqld-auto.cnf中

打開這個文件你可看到你剛才操作過得配置,以JSON 的方式,記錄在這個文件里面,誰配置了什么一目了然。

MYSQL 8如何定住你的set variables

并且我在重啟 MYSQL 后相關(guān)的配置選項不會丟失

MYSQL 8如何定住你的set variables

當(dāng)然如果你刪除了記錄的文件,則相關(guān)的配置在MYSQL 再次啟動后就失效了。

并且通過某些語句,你可以很快的得到你的配置修改的日期,及誰更改的配置。

 select a.VARIABLE_NAME,b.VARIABLE_value ,SET_TIME,SET_USER,SET_HOST       

from performance_schema.variables_info a         

join performance_schema.global_variables b         

on a.VARIABLE_NAME=b.VARIABLE_NAME      

 where b.VARIABLE_NAME like 'innodb_buffer%';

MYSQL 8如何定住你的set variables

當(dāng)然如果你對你的配置想反悔的話,你可以運行 reset persist 命令,將你曾經(jīng)做的,并記錄在文件中的配置,全部抹除。

reset persist;

想想這還真是一個不錯的功能。

看完上述內(nèi)容,你們對MYSQL 8如何定住你的set variables有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI