如果我删除 ibdata1 文件并重新启动服务器会发生什么,我的数据库是 MyISAM,我以前使用 InnoDB,但现在所有表都是 MyISAM。如果我删除此文件将是一个大问题。据我所知,当我重新启动服务器时会重新创建它,但我不明白该文件到底是什么!
答案1
您应该执行以下操作:
将其添加到 /etc/my.cnf
[mysqld]
跳过 innodb
然后执行以下操作:
- 服务 mysql 停止
- rm -f /var/lib/mysql/ib*
- 服务 mysql 启动
按照上述三(3)步重启mysql后,InnoDB文件就不会再出现了。事实上,mysql的启动速度会快很多。
答案2
InnoDB 将所有 ENGINE=InnoDB 的表的表空间存储在该文件中,而在 MyISAM 中,表空间存储在单独的 .MYD 和 .MYI 文件中。
干杯
答案3
是的,您可以删除 ibdata1 文件。但是,只要启用了 InnoDB 引擎,该文件就会在启动时重新创建。我不会在 mysqld 服务运行时删除此文件。