mysql - 将设置为使用 MyISAM 的程序转换为 INNODB

标签 mysql database innodb myisam

我有一个数据库程序,是几年前使用 MYSQL 数据库中的 MYISAM 表编写的。这是一个非常简单的结构,但我不是设置它的人。

所有当前版本的 MYSQL 都设置为 INNODB,我只是想知道将当前应用程序从 MYISAM 转换为 INNODB 有多困难,或者从头开始可以更好地处理这个问题。

考虑到我不是数据库专家:)无论哪种方式都是最简单的。 我已经在模块中找到了大多数(如果不是全部)声明程序使用 MyIsam 的声明,如果我可以更改必要的部分以将其重新声明为 INNODB 并使其正常工作,那肯定会很好

使用 innodb 是否存在会阻止 MYISAM 更改的物理障碍? 正如我所说,这些数据库非常小,最多可能有 100 条记录中的 25 个字段。

感谢您的见解

最佳答案

MyISAM 和 InnoDB 之间存在一些差异,本次讨论中对此进行了很好的描述: https://dba.stackexchange.com/questions/1/what-are-the-main-differences-between-innodb-and-myisam

唯一可能妨碍 InnoDB 使用的方面是 MyISAM 的全文搜索功能,该功能是随 MySQL 5.6 版本引入 InnoDB 中的。因此,如果您的程序不使用全文搜索,或者您的 MySQL 版本支持 InnoDB 全文搜索,则不存在真正的障碍。

鉴于数据库规模较小,并且假设流量也较小,我预计性能方面不会有任何实质性差异。

关于mysql - 将设置为使用 MyISAM 的程序转换为 INNODB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17288239/

相关文章:

php - 在没有任何引用的情况下连接表

PHP 和 MySQL - 比较存储的 IP

Mysql:使用搜索结果作为另一个搜索的输入

php - foreach 数组错误

mysql - 使用 LOAD DATA INFILE 时 MyISAM 索引会变慢

database - 如何在 Access 2007 中创建 View ?

sql - 如何更新或删除 varchar 列中的所有特殊字符

database - Titan如何在HBASE中存储数据

mysql - 如果MySQL的InnoDB PRIMARY列自动建立索引,为什么索引长度报告为零?

mysql - 当查询中未使用字段时,MySQL InnoDB 表中文本字段的大小会影响性能吗