|
импорт данных mysqlimport
|
|||
---|---|---|---|
#18+
прочитал на mysql.com про alter table ____________ Начиная с MySQL 4.0, вышеуказанная возможность может быть активизирована явным образом. Команда ALTER TABLE ... DISABLE KEYS блокирует в MySQL обновление неуникальных индексов для таблиц MyISAM. После этого можно применить команду ALTER TABLE ... ENABLE KEYS для воссоздания недостающих индексов. Так как MySQL делает это с помощью специального алгоритма, который намного быстрее в сравнении со вставкой ключей один за другим, блокировка ключей может дать существенное ускорение на больших массивах вставок. ____________ отключает ли ключи mysqlimport перед вставкой данных? или есть резон написать скрипт типа: alter table ... disable keys mysqlimport ... alter table ... enable keys ? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2003, 16:32 |
|
импорт данных mysqlimport
|
|||
---|---|---|---|
#18+
и как долго он будет эту операцию disable/enable делать? на табличке размером этак гига в 4... ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2003, 16:39 |
|
импорт данных mysqlimport
|
|||
---|---|---|---|
#18+
Всяко дело быстрее, чем если модифицировать все деревья индексов при каждой вставке. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2003, 17:13 |
|
импорт данных mysqlimport
|
|||
---|---|---|---|
#18+
Никто не прав - все дело в том что при пакетной заливке данных в процессе оной индексы вообще не строятся, а строятся посли окончания последней. Все сразу же, нахрапом. Вот и вчся уловка с увеличением скорости. У тебя же MySQL может быть настроен ложить индексы на диск после определенного количества обновлений или через определенное количество времени или еще хуже - после каждой вставки. Представляешь как это тупит. А тут все просто и красива. Н ты был прав - в приложении ключи отключать можно, если используешь не пакет mysqlimport, а собственную разработку, или вручную заливаешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2003, 08:53 |
|
импорт данных mysqlimport
|
|||
---|---|---|---|
#18+
Понятно. А какой параметр задает количество вставленных, после которого перестраиваются индексы? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2003, 14:05 |
|
импорт данных mysqlimport
|
|||
---|---|---|---|
#18+
--flush Задает сброс на диск всех изменений после каждой команды SQL. Обычно MySQL только направляет все изменения на диск после каждой команды SQL, делегируя управление синхронизацией записи на диск операционной системе . --delay-key-write-for-all-tables; В MySQL 4.0.3 следует использовать --delay-key-write=ALL. Отмена сброса на диск ключевых буферов для всех таблиц MyISAM между записями --delay-key-write[= OFF | ON | ALL] Указывает, как на MyISAM DELAYED KEYS должен обрабатываться. flush_time - во то что нужно (сброс всех индексов на диск через указанное количество секунд) delayed_insert_timeout - отложеная вставка на указанное время с секундах. Устанави в конфигуруционном файле через SET Вообще - захиди ко мне на форум, я тебе там все раскожу. http://forum.webcommand.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2003, 12:49 |
|
|
start [/forum/topic.php?fid=47&msg=32249103&tid=1855818]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 331ms |
total: | 479ms |
0 / 0 |