Ускорить OPTIMIZE TABLE

Apr 14, 2019 22:20

Здравствуйте ( Read more... )

Leave a comment

Comments 4

don_oles April 15 2019, 01:47:08 UTC
> созданный файл потом переименовывается в место старого
так это же напрямую влияет на скорость тоже.
будет ли выигрыш?

Reply

simsun April 15 2019, 02:17:13 UTC
Cоздаётся временный файл там же где лежит таблица и переписывает всю таблицу в него, соотв чтение-запись с одного и того-же диска. После старый файл удаляется, а новый переименовывается в имя старого.
ps Можно наверное сделать новую таблицу с указанием нового места хранения и перелопатить в неё, но я просто юзер и так глубоко сам закопаюсь разбираться....

Reply


svetasmirnova April 15 2019, 10:16:08 UTC
OPTIMIZE - это ALTER + ANALYZE и мануал говорит, что "Online ALTER TABLE operations that rebuild the table also create an intermediate table file in the same directory as the original table. The innodb_tmpdir option is not applicable to intermediate table files. " (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_tmpdir) Так что никак, наверное.

Reply

simsun April 15 2019, 11:03:31 UTC
Спасибо

Reply


Leave a comment

Up