Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / импорт данных mysqlimport / 6 сообщений из 6, страница 1 из 1
27.08.2003, 16:32
    #32249103
mad
mad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
импорт данных mysqlimport
прочитал на 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

?

Спасибо.
...
Рейтинг: 0 / 0
27.08.2003, 16:39
    #32249116
mad
mad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
импорт данных mysqlimport
и как долго он будет эту операцию disable/enable делать?
на табличке размером этак гига в 4... ;)
...
Рейтинг: 0 / 0
27.08.2003, 17:13
    #32249178
Хрен
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
импорт данных mysqlimport
Всяко дело быстрее, чем если модифицировать все деревья индексов при каждой вставке.
...
Рейтинг: 0 / 0
29.08.2003, 08:53
    #32250859
alex_24
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
импорт данных mysqlimport
Никто не прав - все дело в том что при пакетной заливке данных в процессе оной индексы вообще не строятся, а строятся посли окончания последней. Все сразу же, нахрапом.
Вот и вчся уловка с увеличением скорости.
У тебя же MySQL может быть настроен ложить индексы на диск после определенного количества обновлений или через определенное количество времени или еще хуже - после каждой вставки. Представляешь как это тупит.
А тут все просто и красива.
Н ты был прав - в приложении ключи отключать можно, если используешь не пакет mysqlimport, а собственную разработку, или вручную заливаешь.
...
Рейтинг: 0 / 0
29.08.2003, 14:05
    #32251435
mad
mad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
импорт данных mysqlimport
Понятно.

А какой параметр задает количество вставленных, после которого перестраиваются индексы?

Спасибо.
...
Рейтинг: 0 / 0
31.08.2003, 12:49
    #32252142
alex_24
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
импорт данных mysqlimport
--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
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / импорт данных mysqlimport / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]