資源描述:
《mysql中myisam引擎與innodb引擎性能簡單測(cè)試》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、MySQL中MyISAM引擎與InnoDB引擎性能簡單測(cè)試>>教育資源庫 [硬件配置] CPU:AMD2500+(1.8G) 內(nèi)存:1G/現(xiàn)代 硬盤:80G/IDE [軟件配置] OS:ARYKEY (`id`))ENGINE=MyISAMDEFAULTCHARSET=gbk;CREATETABLE`innodb`( `id`int(11)NOTNULLauto_increment, `name`varchar(100)defaultNULL, `content`text, PRIMARYKEY (`id`))ENGINE=InnoDBDE
2、FAULTCHARSET=gbk; [數(shù)據(jù)內(nèi)容] $name=heiyeluren; $content=MySQL支持?jǐn)?shù)個(gè)存儲(chǔ)引擎作為對(duì)不同表的類型的處理器。MySQL存儲(chǔ)引擎包括處理事務(wù)安全表的引擎和處理非事務(wù)安全表的引擎:MyISAM管理非事務(wù)表。它提供高速存儲(chǔ)和檢索,以及全文搜索能力。MyISAM在所有MySQL配置里被支持,它是默認(rèn)的存儲(chǔ)引擎,除非你配置MySQL默認(rèn)使用另外一個(gè)引擎。MEMORY存儲(chǔ)引擎提供內(nèi)存中表。MERGE存儲(chǔ)引擎允許集合將被處理同樣的MyISAM表作為一個(gè)單獨(dú)的表。就像MyISAM一樣,MEMORY和MERGE存儲(chǔ)
3、引擎處理非事務(wù)表,這兩個(gè)引擎也都被默認(rèn)包含在MySQL中。釋:MEMORY存儲(chǔ)引擎正式地被確定為HEAP引擎。InnoDB和BDB存儲(chǔ)引擎提供事務(wù)安全表。BDB被包含在為支持它的操作系統(tǒng)發(fā)布的MySQL-Max二進(jìn)制分發(fā)版里。InnoDB也默認(rèn)被包括在所有MySQL5.1二進(jìn)制分發(fā)版里,你可以按照喜好通過配置MySQL來允許或禁止任一引擎。EXAMPLE存儲(chǔ)引擎是一個(gè)存根引擎,它不做什么。你可以用這個(gè)引擎創(chuàng)建表,但沒有數(shù)據(jù)被存儲(chǔ)于其中或從其中檢索。這個(gè)引擎的目的是服務(wù),在MySQL源代碼中的一個(gè)例子,它演示說明如何開始編寫新存儲(chǔ)引擎。同樣,它的主要興趣
4、是對(duì)開發(fā)者。; [插入數(shù)據(jù)-1](innodb_flush_log_at_trx_mit=1) MyISAM1yISAM10yISAM100yISAM1yISAM10yISAM100) InnoDB1,innodb_flush_log_at_trx_mit=1,setautomit=0) InnoDB1ySQL配置文件](缺省配置)#MySQLServerInstanceConfigurationFile[client]port=3306[mysql]default-character-set=gbk[mysqld]port=3306based
5、ir=C:/mysql50/datadir=C:/mysql50/Data/default-character-set=gbkdefault-storage-engine=INNODBsql-mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONmax_connections=100query_cache_size=0table_cache=256tmp_table_size=50Mthread_cache_size=8myisam_max_sort_file_size=1
6、00Gmyisam_max_extra_sort_file_size=100Gmyisam_sort_buffer_size=100Mkey_buffer_size=82Mread_buffer_size=64Kread_rnd_buffer_size=256Ksort_buffer_size=256Kinnodb_additional_mem_pool_size=4Minnodb_flush_log_at_trx_mit=1innodb_log_buffer_size=2Minnodb_buffer_pool_size=159Minnodb_log_
7、file_size=80Minnodb_thread_concurrency=812下一頁>>>>這篇文章來自..,?!究偨Y(jié)】 可以看出在MySQL5.0里面,MyISAM和InnoDB存儲(chǔ)引擎性能差別并不是很大,針對(duì)InnoDB來說,影響性能的主要是innodb_flush_log_at_trx_mit這個(gè)選項(xiàng),如果設(shè)置為1的話,那么每次插入數(shù)據(jù)的時(shí)候都會(huì)自動(dòng)提交,導(dǎo)致性能急劇下降,應(yīng)該是跟刷新日志有關(guān)系,設(shè)置為0效率能夠看到明顯提升,當(dāng)然,同樣你可以SQL中提交SETAUTOMIT=0來設(shè)置達(dá)到好的性能。另外,還聽說通過設(shè)置innodb_buff
8、er_pool_size能夠提升InnoDB的性能,但是我測(cè)試發(fā)現(xiàn)沒有特別明顯的提升?! 』?/p>