MyISAM替代品不是InnoDB?

时间:2011-06-06 09:43:23

标签: mysql myisam

我在数据库中使用MyISAM引擎时遇到问题。它经常腐败并且查询时间严重不同。因此我不能再使用它了。我发现InnoDB是一个很好的替代品,但问题在于:

 Engine         Support     Comment
 MyISAM         DEFAULT     Default engine as of MySQL 3.23 with great perform...
 MEMORY         YES         Hash based, stored in memory, useful for temporary...
 InnoDB         DISABLED    Supports transactions, row-level locking, and fore...
 BerkeleyDB     NO          Supports transactions and page-level locking
 BLACKHOLE      YES         /dev/null storage engine (anything you write to it...
 EXAMPLE        NO          Example storage engine
 ARCHIVE        YES         Archive storage engine
 CSV            YES         CSV storage engine
 ndbcluster     DISABLED    Clustered, fault-tolerant, memory-based tables
 FEDERATED      YES         Federated MySQL storage engine
 MRG_MYISAM     YES         Collection of identical MyISAM tables
 ISAM           NO          Obsolete storage engine

希望格式正确

我对不同引擎的支持没有力量,所以这就是我的工作。

我基本上遇到了麻烦吗?或者有没有这些可以做到这一点?我有一个数据库,可以容纳数百万条目,我需要在“中等文本”字段(可能是全文搜索)上执行“LIKE”操作,并且对数据库具有高插入/更新速率(有时超过50条目/秒)。

2 个答案:

答案 0 :(得分:1)

我说你遇到了麻烦,因为你无法控制引擎,你无法做任何事情。

但是,可以使用Apache Lucene在大型数据库上执行全文搜索。据我所知,它比任何sql引擎更快,更具可扩展性。它是用Java实现的,但是还有许多其他的实现,包括C,C ++ ,. Net,Python,PHP,......

答案 1 :(得分:0)

如果您在使用MyISAM时遇到了腐败问题,那么您在其他地方就会遇到另一个可靠性问题 - 比如您的mysql守护程序被毫不客气地杀死,或者出现磁盘错误或电源问题。

由于禁用了好的替代方案,你很可能会被困在那里。是时候让一个没有禁用好东西的供应商了。