InnoDB 和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而 InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部 键等高级数据库功能。 MyIASM是IASM表的新版本,有如下扩展: 以下是一些细节和具体实现的差别: 1.InnoDB不支持FULLTEXT类型的索引。 另外,InnoDB表的行锁也不是绝对的,如果在执行一个SQL语句时MySQL不能确定要扫描的范围,InnoDB表同样会锁全表,例如update table set num=1 where name like “%aaa%” 任何一种表都不是万能的,只用恰当的针对业务类型来选择合适的表类型,才能最大的发挥MySQL的性能优势.
MySQL中MyISAM引擎与InnoDB引擎性能简单测试 [硬件配置] CREATE TABLE `myisam` ( `id` int ( 11 ) NOT NULL auto_increment, `name` varchar ( 100 ) default NULL , `content` text , PRIMARY KEY (`id`) ) ENGINE = MyISAM DEFAULT CHARSET = gbk; CREATE TABLE `innodb` ( `id` int ( 11 ) NOT NULL auto_increment, `name` varchar ( 100 ) default NULL , `content` text , PRIMARY KEY (`id`) ) ENGINE = InnoDB DEFAULT CHARSET = gbk;
# MySQL Server Instance Configuration File
[ client ] port = 3306 [ mysql ] default-character-set = gbk [ mysqld ] port = 3306 basedir = " C:/mysql50/ " datadir = " C:/mysql50/Data/ " default-character-set = gbk default-storage-engine = INNODB sql-mode = " STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,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 = 64K read_rnd_buffer_size = 256K sort_buffer_size = 256K innodb_additional_mem_pool_size = 4M innodb_flush_log_at_trx_commit = 1 innodb_log_buffer_size = 2M innodb_buffer_pool_size = 159M innodb_log_file_size = 80M innodb_thread_concurrency = 8
|
MySQL中MyISAM 与innoDB的区别
MySQL中MyISAM 与innoDB的区别
2011-09-08 13:22
猜你喜欢
转载自lenka-xiu.iteye.com/blog/1560590
今日推荐
周排行