Difference between InnoDB and MyISAM?
Possible Duplicate:
MyISAM versus InnoDB
好的,我读过维基百科和InnoDB的这些信息似乎更好。 这是我的问题是否可以使用InnoDB而不是MyISAM从数据库中选择用户数据? 或者与MyISAM保持联系会更好。
如果我要改为Inno PDO仍然可以使用它和一些旧式查询?
1 2 | $q = ("SELECT * ... ); $r = mysql_query($q); |
-
InnoDB使用行锁定,MyISAM使用
表锁定,因此...... -
InnoDB的速度较慢
选择 -
InnoDB强制执行参照完整性
(这是非常好的事情) - InnoDB允许交易
通常我会使用InnoDB,如果我的表有更多更新/插入/删除语句然后选择语句或我想要外键的关系数据库,如果不是我坚持使用MyISAM。如果你使用InnoDB,你将放弃select语句性能和执行全文搜索索引的能力。
MyISAM存储引擎。
InnoDB存储引擎。
我很值得考虑你是否会主要使用SELECT查询或INSERT / UPDATE,因为InnoDB支持行级锁定(更适合插入/更新),但MyISAM使用表级锁定(如果你只使用select,会更快) )。有关详细信息,请参阅参考手册。
使用InnoDB而不是MyISAM来选择用户数据是完全可以的。 PDO也将使用它,mysql_query和mysqli_query也是如此。它们与表类型无关。
但请记住,在开始使用之前,您需要了解许多不同的配置。如果你是一个休闲的开发者,我建议你留在MyISAM
innodb相对于myisam的最大优势是innodb支持事务/回滚。 myisam将提供更好的整体性能,因为它不会产生相同的开销。对于简单的用户表,您最好坚持使用myisam。
InnoDB与MyISAM对您编写select语句的方式没有任何区别。它将有助于允许外键,这将有助于您在数据库中保持参照完整性,如果正确设置,帮助确保不创建孤立记录。
有关更多信息,请参见http://en.wikipedia.org/wiki/Foreign_key。