詳細講解優化MySQL數據庫性能的十個參數

(1)、max_connections:

允許的同時客戶的數量。增加該值增加 mysqld 要求的文件描述符的數量。這個數字應該增加,否則,你將經常看到 too many connections 錯誤。 默認數值是100,我把它改爲1024 。

(2)、record_buffer:

每個進行一個順序掃描的線程爲其掃描的每張表分配這個大小的一個緩沖區。如果你做很多順序掃描,你可能想要增加該值。默認數值是131072(128k),我把它改爲16773120 (16m)

(3)、key_buffer_size:

索引塊是緩沖的並且被所有的線程共享。key_buffer_size是用于索引塊的緩沖區大小,增加它可得到更好處理的索引(對所有讀和多重寫),到你能負擔得起那樣多。如果你使它太大,系統將開始換頁並且真的變慢了。默認數值是8388600(8m),我的mysql主機有2gb內存,所以我把它改爲 402649088(400mb)。

(4)、back_log:

要求 mysql 能有的連接數量。當主要mysql線程在一個很短時間內得到非常多的連接請求,這就起作用,然後主線程花些時間(盡管很短)檢查連接並且啓動一個新線程。

back_log 值指出在mysql暫時停止回答新請求之前的短時間內多少個請求可以被存在堆棧中。只有如果期望在一個短時間內有很多連接,你需要增加它,換句話說,這值對到來的tcp/ip連接的偵聽隊列的大小。你的操作系統在這個隊列大小上有它自己的限制。試圖設定back_log高于你的操作系統的限制將是無效的。

當你觀察你的主機進程列表,發現大量 264084 | unauthenticated user | xxx.xxx.xxx.xxx | null | connect | null | login | null 的待連接進程時,就要加大 back_log 的值了。默認數值是50,我把它改爲500。

(5)、interactive_timeout:

服務器在關閉它前在一個交互連接上等待行動的秒數。一個交互的客戶被定義爲對 mysql_real_connect()使用 client_interactive 選項的客戶。 默認數值是28800,我把它改爲7200。

(6)、sort_buffer:

每個需要進行排序的線程分配該大小的一個緩沖區。增加這值加速order by或group by操作。默認數值是2097144(2m),我把它改爲 16777208 (16m)。

(7)、table_cache:

爲所有線程打開表的數量。增加該值能增加mysqld要求的文件描述符的數量。mysql對每個唯一打開的表需要2個文件描述符。默認數值是64,我把它改爲512。

(8)、thread_cache_size:

可以複用的保存在中的線程的數量。如果有,新的線程從緩存中取得,當斷開連接的時候如果有空間,客戶的線置在緩存中。如果有很多新的線程,爲了提高性能可以這個變量值。通過比較 connections 和 threads_created 狀態的變量,可以看到這個變量的作用。我把它設置爲 80。

(9)mysql的搜索功能

用mysql進行搜索,目的是能不分大小寫,又能用中文進行搜索

只需起動mysqld時指定 --default-character-set=gb2312

(10)、wait_timeout:

服務器在關閉它之前在一個連接上等待行動的秒數。 默認數值是28800,我把它改爲7200。

注:參數的調整可以通過修改 /etc/my.cnf 文件並重啓 mysql 實現。這是一個比較謹慎的工作,上面的結果也僅僅是我的一些看法,你可以根據你自己主機的硬件情況(特別是內存大小)進一步修改。

· 把年齡相仿的獅虎熊放一起,誰更厲害?結果出人意料

很多人都想知道獅子、老虎和熊打起來誰最厲害,于是便有好事之人把這三種動物關在一起...

· 湖北宜昌三峽壩區水面驚現神秘動物

近日,湖北宜昌,一段視頻在當地熱傳:有網友在三峽壩區拍到神秘動物,體型碩大數米長...

· 什麽是語段?語段的類型以及和句群、段落的區別與聯系是什麽?

句群是最高級的語言單位。 段落(自然段)是章法單位...

 
MySQL性能優化全攻略-相關數據庫命令
  我們要討論的是數據庫性能優化的另一方面,即運用數據庫服務器內建的工具輔助性能分析和優化。  ▲ SHOW  執行下面這個命令可以了解服務器的運行狀態:  mysql show status;  該命令將顯示出一長列狀態變...查看完整版>>MySQL性能優化全攻略-相關數據庫命令
 
MySQL性能優化全攻略-服務器參數調整
  正確的編譯方法固然重要,但它只是提高MySQL服務器性能工作的一部分。MySQL服務器的許多參數會影響服務器的性能表現,而且我們可以把這些參數保存到配置文件,使得每次MySQL服務器啓動時這些參數都自動發揮作用。...查看完整版>>MySQL性能優化全攻略-服務器參數調整
 
循序漸進講解MySQL數據庫的性能調整
MySQL的性能調整: INSERT查詢的速度: 插入一個記錄的時間由下列組成: 連接:(3) 發送查詢給服務器:(2) 分析查詢:(2) 插入記錄:(1 x 記錄大小) 插入索引:(1 x 索引) 關閉:(1) 這裏的數字有點與總體時間成正...查看完整版>>循序漸進講解MySQL數據庫的性能調整
 
實例講解MYSQL數據庫的查詢優化技術
  數據庫系統是管理信息系統的核心,基于數據庫的聯機事務處理(OLTP)以及聯機分析處理(OLAP)是銀行、企業、政府等部門最爲重要的計算機應用之一。從大多數系統的應用實例來看,查詢操作在各種數據庫操作中所占據...查看完整版>>實例講解MYSQL數據庫的查詢優化技術
 
實例講解MYSQL數據庫的查詢優化技術
數據庫系統是管理信息系統的核心,基于數據庫的聯機事務處理(OLTP)以及聯機分析處理(OLAP)是銀行、企業、政府等部門最爲重要的計算機應用之一。從大多數系統的應用實例來看,查詢操作在各種數據庫操作中所占據的比...查看完整版>>實例講解MYSQL數據庫的查詢優化技術