共計 1857 個字符,預(yù)計需要花費 5 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
這篇文章將為大家詳細講解有關(guān)如何在 MySQL8 中修改持久化全局變量,文章內(nèi)容質(zhì)量較高,因此丸趣 TV 小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
mysql show variables like %max_connections%
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| max_connections | 151 |
| mysqlx_max_connections | 100 |
+------------------------+-------+
rows in set (0.00 sec)
mysql set persist max_connections=200;
Query OK, 0 rows affected (0.00 sec)
mysql show variables like %max_connections%
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| max_connections | 200 |
| mysqlx_max_connections | 100 |
+------------------------+-------+
rows in set (0.00 sec)
全局變量的修改會保存在兩處,
1. 數(shù)據(jù)目錄下 mysqld-auto.cnf 文件,
注意,不是啟動時 –defaults-file 指定的配置文件。
[root@slowtech ~]# cat /var/lib/mysql/mysqld-auto.cnf
{ Version : 1 , mysql_server : { max_connections : { Value : 200 , Metadata : { Timestamp : 1525509217566258 , User : root , Host : localhost } } } }
持久化信息以 json 格式保存,其中,Metadata 記錄了這次修改的用戶及時間信息。
在數(shù)據(jù)庫啟動時,會首先讀取其它配置文件,最后才讀取 mysqld-auto.cnf 文件。不建議手動修改該文件,其有可能導(dǎo)致數(shù)據(jù)庫在啟動過程中因解析錯誤而失敗。如果出現(xiàn)這種情況,可手動刪除 mysqld-auto.cnf 文件或?qū)?persisted_globals_load 變量設(shè)置為 off 來避免該文件的加載。
2. performance_schema.persisted_variables
mysql select * from performance_schema.persisted_variables;
+-----------------+----------------+
| VARIABLE_NAME | VARIABLE_VALUE |
+-----------------+----------------+
| max_connections | 200 |
+-----------------+----------------+
row in set (0.00 sec)
全局變量的持久化除了 SET PERSIST 外,還有 SET PERSIST_ONLY,與前者相比,其只持久化全局變量,而不修改其內(nèi)存值。同時,在權(quán)限方面,前者只需要 SYSTEM_VARIABLES_ADMIN,后者還需要 PERSIST_RO_VARIABLES_ADMIN 權(quán)限。
對于已經(jīng)持久化了變量,可通過 RESET PERSIST 命令清除掉,注意,其只是清空 mysqld-auto.cnf 和 performance_schema.persisted_variables 中的內(nèi)容,對于已經(jīng)修改了的變量的值,不會產(chǎn)生任何影響。
除此之外,還可以通過下述方式將全局變量持久化為默認(rèn)值。注意,是默認(rèn)值,而不是修改前的值。
mysql set persist max_connections=default;
關(guān)于如何在 MySQL8 中修改持久化全局變量就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
向 AI 問一下細節(jié)