前言:目前有個問題在排查階段,需要調整一下interactive_timeout/wait_timeout來模擬和復現線上的問題,不過實際和想象並不一樣,修改這兩個參數,費了一些時間。
1:查看對應的配置
show variables like "%timeout%";
2:修改配置的具體步驟(由於在Mac上沒有對應的配置文件,所以,具體步驟就是新建配置文件、添加配置、指定配置文件、重啟MySQL服務、驗證修改是否ok)
第一步:新建配置文件,具體路徑為 usr/local/etc/mysql/my.cnf 也可以放在別的位置這里主要是模擬默認的配置路徑,文件內容如下所示
[mysqld] wait_timeout = 1200 interactive_timeout = 1200
第二步:指定配置文件,且使其生效
第三步:重啟MySQL服務器
第四步:驗證配置修改是否成功
3:小結
這個配置的修改讓我有點出乎意料,花了一些時間,所以,記一下一筆以加深印象及不時之需。
中間遇到的問題有幾個:
1)沒想到沒有配置文件,找配置文件花費了一些時間
2)知道沒有配置文件后,想找一個默認的配置文件來修改,不過花費了一些時間還是沒有找到一個比較理想的
3)這個問題網上也有一些小伙伴遇到了,不過沒看到比較詳細順暢的修改方式
4)看到直接有通過如下方式修改的,實際使用沒起作用
set global interactive_timeout=1200; set global wait_timeout=1200;
5)參考如下
How do I set wait_timeout to unlimited in mysql?
How do I find the MySQL my.cnf location
Location of my.cnf file on macOS
https://www.jianshu.com/p/e4d8481fffef
MySQL my.cnf location on OS X?
https://blog.csdn.net/StriverLi/article/details/78637026
https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_automatic_sp_privileges