標籤:nbsp stream file table l資料庫 ons 訪問 upd my.cnf
1、查看最大串連數
show variables like ‘%max_connections%‘;
2、修改最大串連數
set GLOBAL max_connections = 200;
以下的文章主要是向大家介紹的是MySQL最大串連數的修改,我們大家都知道MySQL最大串連數的預設值是100, 這個數值對於並發串連很多的資料庫的應用是遠不夠用的,當串連請求大於預設串連數後,就會出現無法串連資料庫的錯誤,因此我們需要把它適當調大一些。在使 用MySQL資料庫的時候,經常會遇到這麼一個問題,就是“Can notconnect to MySQL server. Too many connections”-mysql 1040錯誤,這是因為訪問MySQL且還未釋放的串連數目已經達到MySQL的上限。通常,mysql的最大串連數預設是100, 最大可以達到16384。
常用的修改最大串連數的最常用的兩種方式如下:
第一種:命令列查看和修改最大串連數(max_connections)。
>mysql -uuser -ppassword(命令列登入MySQL)
mysql>showvariables like ‘max_connections‘;(查可以看當前的最大串連數)
msyql>set global max_connections=1000;(設定最大串連數為1000,可以再次查看是否設定成功)
mysql>exit
這種方式有個問題,就是設定的最大串連數只在mysql當前服務進程有效,一旦mysql重啟,又會恢複到初始狀態。因為mysql啟動後的初始化工作是從其設定檔中讀取資料的,而這種方式沒有對其設定檔做更改。
第二種:通過修改設定檔來修改mysql最大串連數(max_connections)。
這種方式說來很簡單,只要修改MySQL設定檔my.ini 或 my.cnf的參數max_connections,將其改為max_connections=1000,然後重啟MySQL即可。但是有一點最難的就是 my.ini這個檔案在哪找。通常有兩種可能,一個是在安裝目錄下,另一種是在資料檔案的目錄下,安裝的時候如果沒有人為改變目錄的話,一般就在 C:/ProgramData/MySQL往下的目錄下,linux系統中一般在/etc目錄下。
其他需注意的:
在編程時,由於用MySQL語句調用資料庫時,在每次之執行語句前,會做一個臨時的變數用來開啟資料庫,所以你在使用MySQL語句的時候,記得在每次調用完MySQL之後就關閉MySQL臨時變數。
另外對於訪問量大的,可以考慮直接寫到文本中,根據預測的訪問量,先定義假若是100個檔案檔案名稱,需要的時候,再對所有文字檔中的資料進行分析,再匯入資料庫。
如果是root帳號,你能看到所有使用者的當前串連。如果是其它普通帳號,只能看到自己佔用的串連
怎麼進入mysql命令列呢? mysql的安裝目錄下面有個bin目錄,先用命令列進入該目錄,然後用 mysql -uroot -p123456 來登入(注意:使用者名稱和密碼不用包含“”)
命令: show processlist;
如果是root帳號,你能看到所有使用者的當前串連。如果是其它普通帳號,只能看到自己佔用的串連。
show processlist;只列出前100條,如果想全列出請使用show full processlist;
mysql> show processlist;
命令: show status;
命令:show status like ‘%下面變數%‘;
Aborted_clients 由於客戶沒有正確關閉串連已經死掉,已經放棄的串連數量。
Aborted_connects 嘗試已經失敗的MySQL伺服器的串連的次數。
Connections 試圖串連MySQL伺服器的次數。
Created_tmp_tables 當執行語句時,已經被創造了的隱含暫存資料表的數量。
Delayed_insert_threads 正在使用的延遲插入處理器線程的數量。
Delayed_writes 用INSERTDELAYED寫入的行數。
Delayed_errors 用INSERTDELAYED寫入的發生某些錯誤(可能重複索引值)的行數。
Flush_commands 執行FLUSH命令的次數。
Handler_delete 請求從一張表中刪除行的次數。
Handler_read_first 請求讀入表中第一行的次數。
Handler_read_key 請求數字基於鍵讀行。
Handler_read_next 請求讀入基於一個鍵的一行的次數。
Handler_read_rnd 請求讀入基於一個固定位置的一行的次數。
Handler_update 請求更新表中一行的次數。
Handler_write 請求向表中插入一行的次數。
Key_blocks_used 用於關鍵字緩衝的塊的數量。
Key_read_requests 請求從緩衝讀入一個索引值的次數。
Key_reads 從磁碟物理讀入一個索引值的次數。
Key_write_requests 請求將一個關鍵字塊寫入緩衝次數。
Key_writes 將一個索引值塊物理寫入磁碟的次數。
Max_used_connections 同時使用的串連的最大數目。
Not_flushed_key_blocks 在金鑰快取中已經改變但是還沒被清空到磁碟上的鍵塊。
Not_flushed_delayed_rows 在INSERTDELAY隊列中等待寫入的行的數量。
Open_tables 開啟表的數量。
Open_files 開啟檔案的數量。
Open_streams 開啟流的數量(主要用於日誌記載)
Opened_tables 已經開啟的表的數量。
Questions 發往伺服器的查詢的數量。
Slow_queries 要花超過long_query_time時間的查詢數量。
Threads_connected 當前開啟的串連的數量。
Threads_running 不在睡眠的線程數量。
Uptime 伺服器工作了多少秒。
MySQL查看最大串連數和修改最大串連數