This is apparently an old issue (see OFBIZ-873 http://markmail.org/message/xggd7nsnorbbhvrv ) that has reared its ugly head again.
In MySQL 5.5, "TYPE is no longer supported in the table syntax. Here is the excerpt from "What's new in MySQL 5.5": "The following constructs are obsolete and have been removed in MySQL 5.5. Where alternatives are shown, applications should be updated to use them. * The |table_type| system variable (use |storage_engine| <http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_storage_engine>). * |||| <http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_timestampadd>The |TYPE| table option to specify the storage engine for |CREATE TABLE| <http://dev.mysql.com/doc/refman/5.5/en/create-table.html> or |ALTER TABLE| <http://dev.mysql.com/doc/refman/5.5/en/alter-table.html> (use |ENGINE|)." The rest of the original issue is still applicable, so I won't repeat it here. Recommendation: Add a variable "tableEngine" ("table-engine=" in the entityengine.xml file <datasource> section) and appropriate code in DatabaseUtil.java, searching for and using the string "ENGINE" where "TYPE" is currently used, but keep the tableType constructs so as not to break other databases. Temporary workaround: Ensure MySQL 5.5 |storage_engine| <http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_storage_engine> server variable is set to InnoDB, and remove the "table-type=InnoDB" line from the <datasource> sections of the entityengine.xml file. I am new to this, and hope that I researched the problem appropriately and posted to the correct area. Any comments or corrections would be welcome.