Warum sollten Sie MyISAM verwenden??? Es unterstützt keine Fremdschlüssel oder Transaktionen. Und es ist selten schneller als InnoDB, da InnoDB Zeilensperren und MVCC verwendet, im Gegensatz zu MyISAMs Sperren für vollständige Tabellen.
Allerdings können Sie dies zum Laufen bringen. Sie müssen seit type
eine neuere Version von MySQL verwenden Das Attribut war eine Zeit lang veraltet und wird jetzt nicht mehr unterstützt - Sie müssen ENGINE
verwenden stattdessen. Es gibt keinen Dialekt, der dies unterstützt (beachten Sie, dass org.hibernate.dialect.MySQL5InnoDBDialect
tut das Richtige für InnoDB), also müssen Sie Ihre eigene erstellen.
Erstellen Sie diese Klasse in src/groovy oder src/java (ändern Sie den Paket- und/oder Klassennamen):
package com.mycompany.myapp
import org.hibernate.dialect.MySQLMyISAMDialect
class MySQL5MyISAMDialect extends MySQLMyISAMDialect {
String getTableTypeString() {
" ENGINE=MyISAM"
}
}
und verweisen Sie in DataSource.groovy darauf, wie Sie in Ihrer Frage gezeigt haben:
dialect = com.mycompany.myapp.MySQL5MyISAMDialect