mysql最大连接数查询_MYSQL 查看最大连接数和修改最大连接数
MySQL查看最大連接數(shù)和修改最大連接數(shù)
1、查看最大連接數(shù)
show variables like '%max_connections%';
2、修改最大連接數(shù)
set GLOBAL max_connections = 200;
以下的文章主要是向大家介紹的是MySQL最大連接數(shù)的修改,我們大家都知道MySQL最大連接數(shù)的默認(rèn)值是100,
這個(gè)數(shù)值對(duì)于并發(fā)連接很多的數(shù)據(jù)庫(kù)的應(yīng)用是遠(yuǎn)不夠用的,當(dāng)連接請(qǐng)求大于默認(rèn)連接數(shù)后,就會(huì)出現(xiàn)無法連接數(shù)據(jù)庫(kù)的錯(cuò)誤,因此我們需要把它適當(dāng)調(diào)大一些。在使
用MySQL數(shù)據(jù)庫(kù)的時(shí)候,經(jīng)常會(huì)遇到這么一個(gè)問題,就是“Can not connect to MySQL server. Too many
connections”-mysql
1040錯(cuò)誤,這是因?yàn)樵L問MySQL且還未釋放的連接數(shù)目已經(jīng)達(dá)到MySQL的上限。通常,mysql的最大連接數(shù)默認(rèn)是100,
最大可以達(dá)到16384。
常用的修改最大連接數(shù)的最常用的兩種方式如下:
第一種:命令行查看和修改最大連接數(shù)(max_connections)。
>mysql?-uuser?-ppassword(命令行登錄MySQL)
這種方式有個(gè)問題,就是設(shè)置的最大連接數(shù)只在mysql當(dāng)前服務(wù)進(jìn)程有效,一旦mysql重啟,又會(huì)恢復(fù)到初始狀態(tài)。因?yàn)閙ysql啟動(dòng)后的初始化工作是從其配置文件中讀取數(shù)據(jù)的,而這種方式?jīng)]有對(duì)其配置文件做更改。
第二種:通過修改配置文件來修改mysql最大連接數(shù)(max_connections)。
這種方式說來很簡(jiǎn)單,只要修改MySQL配置文件my.ini 或
my.cnf的參數(shù)max_connections,將其改為max_connections=1000,然后重啟MySQL即可。但是有一點(diǎn)最難的就是
my.ini這個(gè)文件在哪找。通常有兩種可能,一個(gè)是在安裝目錄下,另一種是在數(shù)據(jù)文件的目錄下,安裝的時(shí)候如果沒有人為改變目錄的話,一般就在
C:/ProgramData/MySQL往下的目錄下,linux系統(tǒng)中一般在/etc目錄下。
其他需注意的:
在編程時(shí),由于用MySQL語(yǔ)句調(diào)用數(shù)據(jù)庫(kù)時(shí),在每次之執(zhí)行語(yǔ)句前,會(huì)做一個(gè)臨時(shí)的變量用來打開數(shù)據(jù)庫(kù),所以你在使用MySQL語(yǔ)句的時(shí)候,記得在每次調(diào)用完MySQL之后就關(guān)閉MySQL臨時(shí)變量。
另外對(duì)于訪問量大的,可以考慮直接寫到文本中,根據(jù)預(yù)測(cè)的訪問量,先定義假若是100個(gè)文件文件名,需要的時(shí)候,再對(duì)所有文本文件中的數(shù)據(jù)進(jìn)行分析,再導(dǎo)入數(shù)據(jù)庫(kù)。
如果是root帳號(hào),你能看到所有用戶的當(dāng)前連接。如果是其它普通帳號(hào),只能看到自己占用的連接
怎么進(jìn)入mysql命令行呢? mysql的安裝目錄下面有個(gè)bin目錄,先用命令行進(jìn)入該目錄,然后用 mysql -uroot -p123456 來登錄(注意:用戶名和密碼不用包含“”)
命令: show processlist;
如果是root帳號(hào),你能看到所有用戶的當(dāng)前連接。如果是其它普通帳號(hào),只能看到自己占用的連接。
show processlist;只列出前100條,如果想全列出請(qǐng)使用show full processlist;
mysql> show processlist;
命令: show status;
命令:show status like '%下面變量%';
Aborted_clients??????????????? 由于客戶沒有正確關(guān)閉連接已經(jīng)死掉,已經(jīng)放棄的連接數(shù)量。
Aborted_connects??????????? 嘗試已經(jīng)失敗的MySQL服務(wù)器的連接的次數(shù)。
Connections???????????????????? 試圖連接MySQL服務(wù)器的次數(shù)。
Created_tmp_tables????????? 當(dāng)執(zhí)行語(yǔ)句時(shí),已經(jīng)被創(chuàng)造了的隱含臨時(shí)表的數(shù)量。
Delayed_insert_threads? ?? 正在使用的延遲插入處理器線程的數(shù)量。
Delayed_writes?? ? ? ? ? ? ?? 用INSERT DELAYED寫入的行數(shù)。
Delayed_errors??????????????? 用INSERT DELAYED寫入的發(fā)生某些錯(cuò)誤(可能重復(fù)鍵值)的行數(shù)。
Flush_commands?????? ? ?? 執(zhí)行FLUSH命令的次數(shù)。
Handler_delete ? ? ? ? ? ? ? ? 請(qǐng)求從一張表中刪除行的次數(shù)。
Handler_read_first ? ? ? ?? 請(qǐng)求讀入表中第一行的次數(shù)。
Handler_read_key?????????? 請(qǐng)求數(shù)字基于鍵讀行。
Handler_read_next?????????? 請(qǐng)求讀入基于一個(gè)鍵的一行的次數(shù)。
Handler_read_rnd?????????? 請(qǐng)求讀入基于一個(gè)固定位置的一行的次數(shù)。
Handler_update????????????? 請(qǐng)求更新表中一行的次數(shù)。
Handler_write???????????????? 請(qǐng)求向表中插入一行的次數(shù)。
Key_blocks_used??????????? 用于關(guān)鍵字緩存的塊的數(shù)量。
Key_read_requests???????? 請(qǐng)求從緩存讀入一個(gè)鍵值的次數(shù)。
Key_reads????????????????????? 從磁盤物理讀入一個(gè)鍵值的次數(shù)。
Key_write_requests???????? 請(qǐng)求將一個(gè)關(guān)鍵字塊寫入緩存次數(shù)。
Key_writes????????????????????? 將一個(gè)鍵值塊物理寫入磁盤的次數(shù)。
Max_used_connections ?? 同時(shí)使用的連接的最大數(shù)目。
Not_flushed_key_blocks ? 在鍵緩存中已經(jīng)改變但是還沒被清空到磁盤上的鍵塊。
Not_flushed_delayed_rows????? 在INSERT DELAY隊(duì)列中等待寫入的行的數(shù)量。
Open_tables????????????????? 打開表的數(shù)量。
Open_files???????????????????? 打開文件的數(shù)量。
Open_streams?????????????? 打開流的數(shù)量(主要用于日志記載)
Opened_tables ? ? ? ? ? ?? 已經(jīng)打開的表的數(shù)量。
Questions ? ? ? ? ? ? ? ? ? ? 發(fā)往服務(wù)器的查詢的數(shù)量。
Slow_queries??????????????? 要花超過long_query_time時(shí)間的查詢數(shù)量。
Threads_connected ? ? ? 當(dāng)前打開的連接的數(shù)量。
Threads_running ? ? ? ?? 不在睡眠的線程數(shù)量。
Uptime ? ? ? ? ? ? ? ? ? ? ?? 服務(wù)器工作了多少秒。
總結(jié)
以上是生活随笔為你收集整理的mysql最大连接数查询_MYSQL 查看最大连接数和修改最大连接数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql5.7.13_mysql5.7
- 下一篇: rowid 对应mysql_请教一下相当