Mysql InnoDB和MyISAM之间的区别?

Mysql InnoDB和MyISAM之间的区别?,mysql,innodb,myisam,Mysql,Innodb,Myisam,可能重复: 好的,我读了维基百科的这些信息,InnoDB看起来更好。我的问题是,使用InnoDB而不是MyISAM从数据库中选择用户数据可以吗?还是留在MyISAM这里更好 如果我改为Inno,PDO还会使用它和一些老式的查询吗 $q = ("SELECT * ... ); $r = mysql_query($q); InnoDB和MyISAM在如何编写select语句方面没有任何区别。它的帮助是允许外键,这将帮助您在数据库中保持引用完整性,如果设置正确,将有助于确保不创建孤立记录 有关更多

可能重复:

好的,我读了维基百科的这些信息,InnoDB看起来更好。我的问题是,使用InnoDB而不是MyISAM从数据库中选择用户数据可以吗?还是留在MyISAM这里更好

如果我改为Inno,PDO还会使用它和一些老式的查询吗

$q = ("SELECT * ... );
$r = mysql_query($q);

InnoDB和MyISAM在如何编写select语句方面没有任何区别。它的帮助是允许外键,这将帮助您在数据库中保持引用完整性,如果设置正确,将有助于确保不创建孤立记录


有关更多信息,请参阅。

innodb相对于myisam的最大优势在于innodb支持事务/回滚。myisam总体上将提供更好的性能,因为它不会产生相同的开销。对于一个简单的用户表,您可能最好坚持使用myisam。

通常我使用InnoDB,如果我的表有更多的更新/插入/删除语句,那么选择语句,或者我想要带外键的关系数据库,如果没有,我坚持使用myisam。如果使用InnoDB,您将放弃select语句性能和全文搜索索引的能力


< /P> < P>我值得考虑的是,你将主要使用选择查询或插入/更新,因为INNODB支持行级锁定(更好地用于插入/更新),但是MyISAM使用表级锁定(如果你只使用选择就更快)…p>

  • InnoDB使用行锁定,MyISAM使用 表锁定,因此
  • InnoDB在性能方面比较慢 挑选
  • InnoDB强制执行引用完整性 (这也是一件非常好的事情)
  • InnoDB允许事务处理

完全可以使用InnoDB而不是MyISAM来选择用户数据,。PDO也将使用它,mysql_查询和mysqli_查询也将使用它,。它们与桌子类型无关


但请记住,在开始使用之前,您需要了解许多不同的配置,。如果您是一名临时开发人员,我建议您使用MyISAM

SELECT语句不会导致行/表锁定,是吗?