mysql - 改变数据库引擎

标签 mysql cluster-computing database-migration

我们有一个使用全文搜索的表,因此需要使用 MyISAM 引擎:

DROP TABLE IF EXISTS `netyears`;
CREATE TABLE IF NOT EXISTS `netyears` (
  `PK_NETYEARID` int(11) NOT NULL auto_increment,
  `ITEMNAME` varchar(9) default NULL,
  `ISLIVE` char(1) default NULL,
  PRIMARY KEY  (`PK_NETYEARID`),
  FULLTEXT KEY `ITEMNAME` (`ITEMNAME`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;

现在我正在尝试实现一个由 5 台机器组成的 mysql 集群以查看性能优势(1 个管理节点、两个守护程序节点和两个数据节点遵循此 tutorial)

我的问题:知道我要从 MyISAM 引擎切换到 NDB(需要跨集群节点保持一致性)引擎时,我需要考虑哪些注意事项?

附带说明,在浏览了上表中使用的几乎所有 SQL 之后,MATCHAGAINST 关键字不是用过的。这是否意味着正在实现的全文搜索毫无意义?

最佳答案

一些考虑因素是 NDB 引擎不支持全文搜索(MyISAMInnoDB 是唯一支持的引擎)搜索,所以你将无法使用 MATCH/AGAINST 但这应该不是问题,因为您的 SQL 中没有这些语句,并且是的,因为您没有它们,这意味着您只需要切换引擎并使用新的 NDB 引擎将数据转储/导入到您的集群。

关于mysql - 改变数据库引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15806368/

相关文章:

mysql - 如果 1 列不在结果中,则追加到 MySQL 结果

php - mysql 检查 3 个月内没有记录,组限制为 1 显示最后一笔交易

php - 在一天中的特定时间禁用项目php

error-handling - 作业崩溃后复制输出

entity-framework - 如何管理开发数据库和生产数据库之间的 EF 迁移?

node.js - 在 LoopBack 4 中迁移数据库后设置新字段的值

mysql - 如何配置 TomEE 和 JPA

nosql - 种子节点如何在 Cassandra 集群中工作

shell - 是否有可以跨Internet连接工作的类UNIX集群操作系统?

asp.net-mvc-4 - 多个 Entity Framework 迁移