Собственно я так и не обнаружил как сказать MySQL чтобы он по умолчанию создавал таблицы типа InnoDB. Поэтому не мудрствуя лукаво быстренько "на коленке" накатал следующий скрипт:
Ну и конечно-же всё это можно уместить в одну строчку и даже можно попытаться алиас создать.
MYSQL='mysql -uusername -ppassword database'
echo "show tables" | \
$MYSQL | \
awk 'BEGIN { n=1}
n==0 { printf("ALTER TABLE %s ENGINE=InnoDB;\n", $1) }
n==1 { n=0 }' | \
$MYSQLДёшево и сердито! ;)Ну и конечно-же всё это можно уместить в одну строчку и даже можно попытаться алиас создать.
alias mysqlmoddb='echo "show tables" | $MYSQL | awk '\''BEGIN { n=1} n==0 { printf("ALTER TABLE %s ENGINE=InnoDB;\n", $1) } n==1 { n=0 }'\'' | $MYSQL'Тогда достаточно будет лишь менять значение переменной MYSQL, примерно так:$ MYSQL='mysql -uroot mysql' $ mysqlmoddb
2 коментарі:
документация говорит, что в секцию [mysqld] файла глобальной конфигурации надо добавить строку
default-storage-engine=innodb
и перезапустить mysql. именно restart, а не reload.
ссылка потерялась.
вот:
описание параметра и опции
Дописати коментар