當前位置:編程學習大全網 - 源碼下載 - innodb和myisam的區別

innodb和myisam的區別

InnoDBMyISAM用的是MySQL。兩種表類型的優缺點取決於具體的應用。基本區別在於MyISAM類型支持高級處理,如事務處理。InnoDB類型支持MyISAM類型表,強調性能。它的執行時間比InnoDB類型快。InnoDB提供事務支持。它具有高級數據庫功能,如外部鍵。MyIASMIASM表的新版本擴展:二進制層可移植性空列索引行變化比ISAM表更少碎片化,支持文件更多索引壓縮,更多關鍵統計布更快,auto_increment處理壹些細節。具體實現差異:1。InnoDB支持全文類型索引。2.InnoDB保存表中的特定行,並指示執行select count(*)。從tableInnoDB掃描整個表計算較少的行數MyISAM簡單讀取保存的行數,也就是註意count(*)。該語句包含where條件的兩個表操作。3.在AUTO_INCREMENT類型的字段中,InnoDB必須包含該字段的索引。MyISAM表根據其字段建立了壹個聯合索引。4.DELETE FROM tableInnoDB重新建立表格行和行。5.來自主機的LOAD TABLE操作InnoDB首先解決問題。ODB表更改為MyISAM表以導入數據,然後InnoDB表更改為使用附加InnoDB特性(異常鍵)表。此外,InnoDB表行被鎖定,SQL語句被執行。MySQL可以確定要掃描的範圍。InnoDB表與整個表鎖定在壹起。示例Update table set num = 1其中像% AAA% Any table這樣的名稱是萬能的。選擇合適的業務類型選擇合適的表類型,可以充分發揮MySQL的性能優勢。MySQLMyISAM引擎和InnoDB引擎的簡單性能測試【硬件配置】CPU: AMD2500+ (1.8G)內存:1G/ modern硬盤:80G/IDE【軟件配置】OS:Windows XP SP2 SE:PHP 5 . 2 . 1db:MySQL 5 . 0 . 37 Web:IIS 6【MySQL表結構】創建表` MyISAM `( ` id ` int(108CREATE TABLE ` InnoDB `( ` id ` int(11)NOT NULL auto _ increment,` name ` varchar(100)DEFAULT NULL,` content` text,PRIMARY KEY(` id `))ENGINE = InnoDB DEFAULT CHARSET = gbk;[數據內容]$ name = " heiyeluren ";$content = "MySQL支持多個存儲引擎作為同壹表類型的處理器。MySQL存儲引擎包括事務安全表引擎,用於處理非事務安全表引擎:MyISAM管理非事務表,以提供高速存儲檢索和全文搜索功能。Myisam配置為支持默認存儲引擎,除非MySQL默認配置為使用另壹個引擎。內存存儲引擎提供內存表m。戈爾存儲引擎允許聚合處理與MyISAM表分離。MyISAMMEMORYMERGE存儲引擎處理非事務性表。兩個引擎都默認包含MySQL解釋:內存存儲引擎決定堆引擎InnoDB BDB存儲引擎提供事務安全表。BDB包括操作系統支持的MySQL-Max二進制版本。InnoDB默認包含My。SQL 5.1二進制分發根據西通示例存儲引擎存根引擎的配置允許或禁止MySQL作為引擎作為引擎創建壹個沒有數據存儲在其中的表或其搜索引擎。MySQL源代碼示例演示了如何與主要相關方壹起編寫新的存儲引擎”;[插入數據-1](Innodb _ flush _ log _ at _ Trx _ commit = 1)myisam 1w:3/s Innodb 1w:219/s myisam 1w:2092/s myisam 100 w:287/s Innodb 100 w:沒有INNODB 1w:3/s myisam 1w:30/s INNODB 1w:29/s myisam 100 w:273/s INNODB 100 w:423/s[插入數據3](INNODB _ buffer _ pool _ size = 1024m)INNODB 1w:3/s INNODB 10w:33 NO _ ENGINE _ SUBSTITUTION " max _ connections = 100 query _ cache _ size = 0 table _ cache = 256 tmp _ table _ size = 50M thread _ cache _ size = 8 myisam _ max _ sort _ file _ size = 100g myisam _ max _ extra _ sort _ file _ size = 100g myisam _ sort _ buffer _ size = 100m key _ buffer _ size = 82M read _ buffer _ size 應該和刷新日誌設置0有關,效率可以明顯提高。另外,聽說設置innodb_buffer_pool_size可以提高innodb的性能。我測試發現沒有明顯的改善。用InnoDB代替我的MyISAM引擎InnoDB本身的優勢比事務支持、存儲過程、視圖、行級鎖等都要好。我相信InnoDB的性能肯定比MyISAM好,對應的my.cnf配置更關鍵。良好的配置可以有效加快復雜Web應用的應用速度。非關鍵應用繼續考慮MyISAM的具體情況,考慮Mysql InnoDBMyISAM的區別。
  • 上一篇:大壹新生想入門PS及壹些創意類文案的制作,如H5之類的,需要什麽軟件?
  • 下一篇:解析有錢還
  • copyright 2024編程學習大全網