MYSQL 檢視最大連線數和修改最大連線數

2021-09-19 16:12:50 字數 3299 閱讀 9268

show variables like '%max_connections%'

;

set global max_connections =

200;

以下的文章主要是向大家介紹的是mysql最大連線數的修改,我們大家都知道mysql最大連線數的預設值是100, 這個數值對於併發連線很多的資料庫的應用是遠不夠用的,當連線請求大於預設連線數後,就會出現無法連線資料庫的錯誤,因此我們需要把它適當調大一些。在使 用mysql資料庫的時候,經常會遇到這麼乙個問題,就是「can not connect to mysql server. too many connections」-mysql 1040錯誤,這是因為訪問mysql且還未釋放的連線數目已經達到mysql的上限。通常,mysql的最大連線數預設是100, 最大可以達到16384。

第一種:命令列檢視和修改最大連線數(max_connections)。

mysql -uuser -p password

(命令列登入mysql)

mysql>show variables 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

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

伺服器工作了多少秒。

MYSQL 檢視最大連線數和修改最大連線數

mysql檢視最大連線數和修改最大連線數 1 檢視最大連線數 show variables like max connections 2 修改最大連線數 set global max connections 200 以下的文章主要是向大家介紹的是mysql最大連線數的修改,我們大家都知道mysql最...

MYSQL 檢視最大連線數和修改最大連線數

mysql檢視最大連線數和修改最大連線數 1 檢視最大連線數 show variables like max connections 2 修改最大連線數 set global max connections 200 以下的文章主要是向大家介紹的是mysql最大連線數的修改,我們大家都知道mysql最...

MYSQL 檢視最大連線數和修改最大連線數

mysql檢視最大連線數和修改最大連線數 1 檢視最大連線數 show variables like max connections 2 修改最大連線數 set global max connections 200 以下的文章主要是向大家介紹的是mysql最大連線數的修改,我們大家都知道mysql最...