Pull to refresh

mysqlcheck и optimize таблиц InnoDB

Reading time1 min
Views3.8K
Только что заметил, что если делать
mysqlcheck -o --repair db_name
и ваши таблицы в InnoDB, то не только не происходит repair (что и не должно, так как движок не поддерживает эту функцию), но и optimize не срабатывает.
То есть, база остается без optimize и вы этого не замечаете!

Если делать так:
mysqlcheck -o db_name
, то происходит пересоздание (recreate) каждой таблицы.

Из-за этого у меня optimize не выполнялся скриптом по крону уже полгода, с момента перехода с MyISAM на InnoDB.

PS: В моем случае используется innodb_file_per_table.
Tags:
Hubs:
-3
Comments5

Articles