MySQL8.0版本新特性-全局變量修改

MySQL8之前的版本,例如5.7,在修改全局變量時候,並不會影響到配置文件,重啓之後就會恢復到默認值。今天看mysql參考手冊時發現了新版本對於修改變量的新方法----set persist,可以使全局系統變量變爲永久性。

https://dev.mysql.com/doc/refman/8.0/en/using-system-variables.html

 以修改最大連接數----max_connections爲例。

1.查詢現有的連接數;

2.該參數在5.7版本中使用----set global ; 

3.reboot之後就會消失;5.7版本中如果想保持修改,在我的路徑中還需要修改----/usr/lib/systemd/system/mysqld.service 文件。在最後加入參數,然後重啓服務。

LimitNOFILE=65535
LimitNPROC=65535

systemctl daemon-reload  //重載所有修改過的配置文件
systemctl restart  mysqld

 4.使用新方法----set persist;

	set persist max_connections = 200;

  set global,set persist更改運行時變量值,但也將變量設置寫入mysqld-auto.cnf數據目錄中指定的選項文件 。數據庫啓動時,會首先讀取其它配置文件,最後纔讀取mysqld-auto.cnf文件。所以不建議手動修改該文件,其有可能導致數據庫在啓動過程中因解析錯誤而失敗。如果出現這種情況,可手動刪除mysqld-auto.cnf文件或將persisted_globals_load變量設置爲off來避免該文件的加載。auto文件中的Metadata記錄了這次修改的用戶及時間信息。

對於已經持久化了變量,可通過reset persist命令清除掉,注意,其只是清空mysqld-auto.cnf和performance_schema.persisted_variables中的內容,對於已經修改了的變量的值,不會產生任何影響。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章