linux下面MySQL變量修改及生效


  今天在訪問mysql項目的時候突然報500錯誤,沒有找到連接,因此想到mysql的連接時間。

mysql> show global variables;

 

 

 主要就是連接時間是28800(8小時),而且任務調度也沒打開,因此想到修改全局變量的值。

 1.修改任務調度裝:

  1.1具體的查看任務調度的狀態:show variables like '%event%';

 

   1.2修改任務打開狀態:set global event_scheduler=on;

 

 2.修改數據庫連接時間:

2.1查看連接時間:show variables like '%timeout%';

  發現默認保持時間是2880(8小時)

 2.2修改連接時間:

mysql> set global wait_timeout=604800;
Query OK, 0 rows affected (0.00 sec)

mysql> set global interactive_timeout=604800;
Query OK, 0 rows affected (0.00 sec)

 

2.3.查看連接時間:show variables like '%timeout%';

發現好像沒生效。在這個會話里變量使不生效的需要退出后在進入查看mysql變量就生效。也就是退出mysql重新登錄一下發現剛才的配置生效。

 

 

 3.重新啟動mysql服務器后發現又不起作用了(修改/etc/my.cnf使變量啟動生效)

修改好后記得要修改my.cnf文件讓mysql在重啟后變量值不變,要注意的是使用set global設置mysql的變量值需要在配置的時候

在my.cnf文件里的[mysqld]棧下寫下這個變量,不然mysql還是要重啟的。

 

 重新啟動發現三個變量都生效,修改mysql的啟動默認值需要修改/etc/my.cnf文件 

 

 

mysql重要的全局變量:event_scheduler  任務調度

          wait_timeout  連接時長

          interactive_timeout  連接時長

          max_allowed_packet 參數限制,導致寫入或者更新失敗

 

 

 

 

 總結:

  最后在my.cnf中也有mysql日志文件的位置,也就是mysql的默認配置都是修改的,只需要修改my.cnf,如果查看mysql 的默認值的話就是用上面的show variables like '%...%'

  因此也聯想到剛開始安裝mysql服務器修改my.cnf中mysql的默認編碼,參考:http://www.cnblogs.com/qlqwjy/p/7504865.html

  修改mysql 的配置要了解當前版本mysql有哪些全局變量,不同版本的mysql全局變量不同,知道有哪些變量再對應的修改其值為想要的值

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM