tags:

views:

341

answers:

2

I'm using MySQL 5, and my database experienced some corruption last week. The technicians at my web host managed to save it, but the tables are all converted from the original InnoDB to MyISAM. Currently, some functions in my eCommerce application does not work.

Is there a easy way for me to convert them back to InnoDB again? I can't find anything in phpMyAdmin. Do I need to write a PHP script?

Thanks.

+4  A: 

You can run this query:

ALTER TABLE table_name ENGINE = InnoDB;

on all tables

hab
Does altering the engine implicitly change the individual tables?
Randell
can I do batch process for all the tables?
Bo Tian
@Randell Benavidez: No, you'll have to change it for every table@Bo Tian: One way I found on the Internet is http://www.linux.com/archive/feature/46370
hab
experienced some problems. I always get #1025 - Error on rename of './noblesg_mage/#sql-689d_6e416' to './noblesg_mage/api_role' (errno: 121)
Bo Tian
+1  A: 

If you want do this By Mysql application you can use MySQLQueryBrowser.exe or SQLYoq.exe in both of them you can alter Table and choose DB Engine

Am1rr3zA