Найч
Алгоритмик :-)
Partitions: физически перенести partition
Всем доброго дня
Есть большая таблица myisam, разбитая на партиции по месяцам. Данные записываются поледовательно, что-то вроде логов, т.е. запись всегда идет только в один "последний" раздел. Задача - перенести физически любую из неактивных партиций самым быстрым и безопасным способом. Из возможностей мускула нашел
[sql]
alter table big_table reorganize partition `p2010_09` INTO (
partition `p2010_09` VALUES LESS THAN (734411)
DATA DIRECTORY = '/tmp/'
INDEX DIRECTORY = '/tmp/'
)
[/sql]
который лочит всю таблицу на запись и перегеняет все данные через мускул, что занимает довольно много времени. В то время как изменось только DDL таблицы и вместо старых двух файлов партиции появились симлинки на реальные файлы. Те же операции руками занимают несколько секунд, и очень хотелось бы что-то похожее иметь в мускуле, а не пытаться его обманывать.
Кто-нибудь делал похожее?
Всем доброго дня
Есть большая таблица myisam, разбитая на партиции по месяцам. Данные записываются поледовательно, что-то вроде логов, т.е. запись всегда идет только в один "последний" раздел. Задача - перенести физически любую из неактивных партиций самым быстрым и безопасным способом. Из возможностей мускула нашел
[sql]
alter table big_table reorganize partition `p2010_09` INTO (
partition `p2010_09` VALUES LESS THAN (734411)
DATA DIRECTORY = '/tmp/'
INDEX DIRECTORY = '/tmp/'
)
[/sql]
который лочит всю таблицу на запись и перегеняет все данные через мускул, что занимает довольно много времени. В то время как изменось только DDL таблицы и вместо старых двух файлов партиции появились симлинки на реальные файлы. Те же операции руками занимают несколько секунд, и очень хотелось бы что-то похожее иметь в мускуле, а не пытаться его обманывать.
Кто-нибудь делал похожее?