您好,登錄后才能下訂單哦!
在MySQL5.1之前的版本中,默認是MySIAM引擎,每個MySIAM在磁盤上會將數(shù)據(jù)存儲成三個文件。
第一個是表結(jié)構(gòu)文件,它的名字以表的名字開始,其擴展會指出文件類型,為.frm 文件存儲表定義;
第二個文件,其拓展名.MYD;
第三個文件是索引文件,其擴展名是.MYI(MYINDEX)
MyISAM存儲引擎的特定是表級鎖,不支持事務(wù)和全文索引,適合一些CMS內(nèi)容管理系統(tǒng)作為后臺數(shù)據(jù)庫使用,但是在大并發(fā),重負荷生產(chǎn)系統(tǒng)上,表級鎖的特性顯得力不從心,并且如果系統(tǒng)出現(xiàn)宕機,MySQLd進程崩潰,MyISAM引擎很容易受損害,這時候不得不使用MyISAMchk去修復(fù)她,基于這個原因,從MySQL5.5開始,默認的存儲引擎變成了InnoDB Plugin引擎
。
InonoDB給Mysql提供了具有提交,回滾和崩潰恢復(fù)能力的事務(wù)安全存儲引擎。其SELECT語句與Oracle風(fēng)格一致--非鎖定讀。準(zhǔn)確的說InnoDB是為處理巨大的數(shù)據(jù)量時擁有最大的性能而設(shè)定的。它的CPU效率是其他任何基于磁盤的關(guān)系數(shù)據(jù)庫引擎所不能匹敵的。
在諸多高并發(fā),高壓力的大型數(shù)據(jù)庫站點上,Innodb用的非常廣泛。有些站點的InnoDB上處理平均每秒800此插入/更新的負荷。
在5.1版本中,innodb_file _io_threads 參數(shù)默認是4,該參數(shù)在Linux系統(tǒng)上是不能更改的,但是windows系統(tǒng)上可以調(diào)整。這個參數(shù)的作用是INnodb使用后臺線程處理數(shù)據(jù)頁上讀寫I/O請求的數(shù)量。在5.5版本以后,用兩個新的參數(shù)取代了innodb_file_io_threads,調(diào)整后,在Linux平臺上就可以根據(jù)CPU核心數(shù)來更改相應(yīng)的參數(shù)了,默認是4.
加入CPU有兩顆8核心的,那么可以設(shè)置為:
innodb_read_io_threads =8
innodb-write_io_threads=8
如果數(shù)據(jù)庫的讀操作比寫多,那么可以設(shè)置:
innodb_read_io_threads =10
innodb-write_io_threads=6
至于具體的設(shè)置方法,需要根據(jù)你們公司的情況來設(shè)置。不過需要注意的事,這兩個參數(shù)不支持動態(tài)改變,需要把參數(shù)寫到My.cn里,修改完后記得重啟,允許值為1-64.調(diào)整完之后,你可以使用 show engine innodb status \G ;
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。