SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.08.2015 13:36:33

ruport
Участник
Зарегистрирован: 19.08.2015
Сообщений: 5

Как быстро импортировать 10млн строк в mySQL ?

Установлен последний mySQL на моем компе. (i7/16GB Ram/ssd).
Имеется 10млн. строк инструкций INSERT INTO t1 VALUES (null,'бла-бла-бла','бла-бла-бла');
Через коммандную строку mySQL импортируются в таблицу со скоростью 26 строк в секунду, через HeidiSQL такая же скорость.
Получается, чтобы импортировать 10млн строк, понадобится 10000000/26/3600=106 часов или около четырех суток. Это очень долго.
Помню когда импортировал базу размером в 400-500мб на хостинг через phpmyadmin, то там этот процесс занимает не более 30-40 секунд.
Почему такая разница в скорости? Или как правильно  быстро импортировать базу из дампа в 10млн. строк?

Неактивен

 

#2 19.08.2015 14:20:25

ruport
Участник
Зарегистрирован: 19.08.2015
Сообщений: 5

Re: Как быстро импортировать 10млн строк в mySQL ?

ответ:
LOAD DATA LOCAL INFILE "Chmm-mysql/out.txt" INTO TABLE db1.t1;
заняло 1-2 минуты

Неактивен

 

#3 19.08.2015 14:36:04

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Как быстро импортировать 10млн строк в mySQL ?

Кроме того, может помочь
ALTER TABLE db1.t1 DISABLE KEYS;
ALTER TABLE db1.t1 ENABLE KEYS;
до и после LOAD DATA LOCAL INFILE

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson