【參考】Timeout expired 超時時間已到. 達到了最大池大小 錯誤及Max Pool Size設置html
【參考】【數據庫-MySql】 MySqlConnection error connecting: Timeout expired.mysql
【參考】查看mysql數據庫鏈接數、併發數相關信息的命令sql
解決方案:數據庫
一、若是是操做同一個數據庫,建議只建立一次MySqlConnection且open一次,其餘操做都調用這一個鏈接緩存
new MySqlConnection(connString);
MySqlConnection.Open();服務器
二、若是是操做不一樣的數據庫,建議設置鏈接池的大小,建議單次調用時建立MySqlConnection的次數不要超過max pool size併發
MySqlConnection.ConnectionString= "server=192.1.33.26;port=8080;User Id=Admin;password=123456;pooling=true;min pool size=5;max pool size=1024;connect timeout = 20;database=Mydatabase;post
參考數據庫連接串:ui
查看mysql數據庫鏈接數:url
命令: 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 用INSERT DELAYED寫入的行數。
Delayed_errors 用INSERT DELAYED寫入的發生某些錯誤(可能重複鍵值)的行數。
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 在INSERT DELAY隊列中等待寫入的行的數量。
Open_tables 打開表的數量。
Open_files 打開文件的數量。
Open_streams 打開流的數量(主要用於日誌記載)
Opened_tables 已經打開的表的數量。
Questions 發往服務器的查詢的數量。
Slow_queries 要花超過long_query_time時間的查詢數量。
Threads_connected 當前打開的鏈接的數量。
Threads_running 不在睡眠的線程數量。
Uptime 服務器工做了多少秒。