问题
I would like to use InnoDB as the storage engine on all my tables and databases. Is there a command I can run to change the type of my current tables to use InnoDB instead of MyISAM?
Also, is there a way to set this as the default so I don't have to do this again?
回答1:
The following article will tell you how to set the default storage engine, how to explicitly use a specific engine during a CREATE TABLE command, and how to change the storage engine of existing tables:
http://dev.mysql.com/doc/refman/5.1/en/storage-engine-setting.html
回答2:
To change the storage engine of an existing table:
ALTER TABLE my_table ENGINE = InnoDB;
To set InnoDB as default:
Normally, this is MyISAM, but you can change it by using the --default-storage-engine or --default-table-type server startup option, or by setting the default-storage-engine or default-table-type option in the my.cnf configuration file.
回答3:
If you use are using the mysql workbench there is a script menu option to change the engine of all tables.
Select Plugins > Utilities > Change storage engine of all all tables.
来源:https://stackoverflow.com/questions/1780083/how-to-change-the-storage-engine-type-on-mysql