尋找mysql安裝目錄
whereis mysql
查看var目錄
查看mysql自己配置
whereis my.cnf
或
mysql>show VARIABLES like '%log%';
# vi /etc/my.cnf
[mysqld] wait_timeout=10
# /etc/init.d/mysql restart
不過這個方法太生硬了,線上服務重啟無論如何都應該儘可能避免,看看如何在MySQL命令列裡通過SET來設定:
mysql> set global wait_timeout=10; |
mysql> show global variables like 'wait_timeout'; +----------------------------+-------+ | Variable_name | Value | +----------------------------+-------+ | wait_timeout | 10 | +----------------------------+-------+ |
http://blog.chinaunix.net/u/14014/showart_490462.html
mysql>show variables like '%timeout';
列印結果如下:
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| connect_timeout | 5 |
| delayed_insert_timeout | 300 |
| interactive_timeout | 28800 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| slave_net_timeout | 3600 |
| wait_timeout | 28800 |
+----------------------------+-------+
interactive_timeout 需在mysql_connect()設定CLIENT_INTERACTIVE選項後起作用,並被賦值為wait_timeout;
mysql>set wait_timeout = 10; 對當前互動連結有效;
mysql>set interactive_timeout = 10; 對後續起的互動連結有效;
該逾時時間單位是秒,從變數從上次SQL執行後算起;當前空閑若超過該時間,則也會被強制斷開。
http://blog.sina.com.cn/s/blog_473d5bba0100051j.html
interactive_timeout 伺服器在關閉串連前在一個互動串連上等待行動的秒數。一個互動的客戶被定義為對 mysql_real_connect()使用 CLIENT_INTERACTIVE 選項的客戶,預設數值是28800。 wait_timeout 伺服器在關閉串連之前在一個串連上等待行動的秒數,預設數值是28800,即如果沒有事情發生,伺服器在 8個小時後關閉串連。 http://www.potu.com/193938/9276848在MySQL的通用設定檔中,一般沒有wait-timeout這個配置項,可能得手工添加:
我對wait-timeout這個參數的理解:MySQL用戶端的資料庫連接閑置最大時間值。
說得比較通俗一點,就是當你的MySQL串連閑置超過一定時間後將會被強行關閉。MySQL預設的wait-timeout值為8個小時
設定這個值是非常有意義的,比如你的網站有大量的MySQL連結請求(每個MySQL串連都是要記憶體資源開銷的),由於你的程式的原因有大量的串連請求空閑啥事也不幹,白白佔用記憶體資源,或者導致MySQL超過最大串連數從來無法建立串連導致“Too many connections”的錯誤。在設定之前你可以查看一下你的MYSQL的狀態(可用show processlist),如果你發現你的MYSQL中有大量的Sleep進程,哪麼你真的需要設定你的wait-timeout了。如果你設定wait-timeout=10,MySQL中的所有Sleep線程最多隻能“睡”10秒,之後就被強行關閉了。
這對於一些負荷比較重的MySQL還是比較有用的
====================
MySQL的最大串連數預設是100用戶端登入:mysql -h127.0.0.1 -uusername -ppassword
設定新的最大串連數為200:mysql> set GLOBAL max_connections=200
顯示當前啟動並執行Query:mysql> show processlist
顯示目前狀態:mysql> show status
退出用戶端:mysql> exit
根據hostname顯示
mysqladmin -u root -p processlist | grep 10.20.126.1
http://dev.mysql.com/doc/refman/5.5/en/show-processlist.html