What happens if I delete the ibdata1 file and restart the server, my database is MyISAM, I used InnoDB before but now all tables are MyISAM. Will be a big problem if I delete this file. As far as I know that will be recreated when I restart the server, but I don't understand what exactly is that file!
3 Answers
You should do the following:
Add this to /etc/my.cnf
[mysqld]
skip-innodb
Then perform the following:
- service mysql stop
- rm -f /var/lib/mysql/ib*
- service mysql start
Once you restart mysql from those three(3) steps, none of the InnoDB files should reappear. In fact, you should get a much faster mysql startup.
InnoDB stores the tablespace for all tables with ENGINE=InnoDB in that file whereas in MyISAM the tablespace is stored in individual .MYD and .MYI files.
Cheers
-
-
@Kedare, True if using innodb_file_per_table, but that is not the default configuration.– HTTP500Jun 15, 2011 at 14:55
Yes, you can remove the ibdata1 file. However, as long as you have the InnoDB engine enabled, the file will be recreated at startup. I wouldn't delete this file while the mysqld service is running.