将表类型从MyISAM更改为InnoDB

时间:2011-07-28 03:10:13

标签: mysql innodb myisam

我想知道是否将某些表从MyISAM转换为InnoDB,是否会导致数据损坏?

我需要将一些表转换为InnoDB,以便我可以使用事务,但它们持有非常重要的数据,因此我不确定是否应该进行转换。

3 个答案:

答案 0 :(得分:7)

虽然更改表的数据库引擎是一项简单而常见的任务,应该不会导致损坏,但保证不会发生损坏的唯一方法是首先进行自己的备份。

答案 1 :(得分:0)

当然总是存在数据丢失的风险;但总的来说,我认为它相当低。

当更改表时,MySQL将在大多数操作(包括此操作)的临时副本上工作。所以如果操作失败,它不会损害你的原始表。

备份会让你感觉更好......

答案 2 :(得分:0)

MySQL已经设计了它,以便在表类型之间进行转换,使其具有健壮性。

除了转换所需的时间之外,数据的唯一风险是数据库运行时的正常后台风险。也就是说,你应该总是备份,如果不丢失任何东西很重要,你应该复制。