Proč byste chtěli používat MyISAM??? Nepodporuje cizí klíče ani transakce. A jen zřídka je rychlejší než InnoDB, protože InnoDB používá zámky řádků a MVCC, na rozdíl od zámků MyISAM pro celou tabulku.
Když už to bylo řečeno, můžete to uvést do provozu. Od type
musíte používat novější verzi MySQL atribut byl na chvíli zastaralý a nyní není podporován – musíte použít ENGINE
namísto. Neexistuje žádný dialekt, který by to podporoval (všimněte si, že org.hibernate.dialect.MySQL5InnoDBDialect
dělá správnou věc pro InnoDB), takže si musíte vytvořit vlastní.
Vytvořte tuto třídu v src/groovy nebo src/java (změňte název balíčku a/nebo třídy):
package com.mycompany.myapp
import org.hibernate.dialect.MySQLMyISAMDialect
class MySQL5MyISAMDialect extends MySQLMyISAMDialect {
String getTableTypeString() {
" ENGINE=MyISAM"
}
}
a odkazujte na něj v DataSource.groovy, jak jste ukázali ve své otázce:
dialect = com.mycompany.myapp.MySQL5MyISAMDialect