我有一个遗留的Web应用程序php4/mysql4(MyISAM,数据库包含一些cms,一些用户数据,一些日历应用程序)。现在我要迁移到带有 php5/mysql5 的新服务器。
迁移mysql数据库时是否应该更改为InnoDB?
- 预期的优点/缺点/风险?
- MyISAM 是否已被弃用或者有一天会被弃用?或者我可以安全地保留它吗?
- 我听说MyISAM很容易崩溃,那么InnoDB呢,它抗崩溃吗?
- InnoDB 的备份和恢复是否更容易或更安全?
当我进行更改(破坏 SQL 查询)或破坏逻辑(因为更改了锁定机制)时,它会破坏我的代码吗?如果是,典型场景是什么?
(对于 php 问题,我创建了一个不同的问题:将 php4/mysql4 迁移到 php5/mysql5:预期的 php 问题? https://stackoverflow.com/questions/745806/migrating-php4-mysql4-to-php5-mysql5-expected-php-issues)
您应该研究的关键问题是您的数据库是如何使用的。如果读多于写,那么你应该坚持使用MyISAM,如果写多于读,你应该考虑InnoDB。
如果你想知道InnoDB和MyISAM的区别,那么维基百科有一个很棒的列表 http://en.wikipedia.org/wiki/Myisam他们的差异。
MyISAM 对任何现有行的写入使用表级锁定,而 InnoDB 使用行级锁定。
对于经常更新许多行的大型数据库应用程序,行级锁定至关重要,因为单个表级锁定会显着降低数据库中的并发性。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)