2015-07-20 2 views
1

У меня есть база данных с одной конкретной таблицей, содержащей более 4 миллионов записей. Я попытался загружая всю БД с помощью MySQL Workbench, а также командного терминала, используя следующую команду:Как экспортировать 4 миллиона данных в MySQL?

mysqldump -u root -p password mydb > myfile.sql 

Но, я получил только половину загруженных данных. Если я проигнорировал эту конкретную таблицу, тогда она работает нормально. Может ли кто-нибудь предложить мне, как загрузить db с таблицами, имеющими более миллиона записей?

+0

@ N.B. Я отредактировал вопрос. Можете ли вы предложить мне, что пошло не так? –

+0

В порядке - для реалов теперь - вы не публиковали никаких ошибок, и у вас может не быть сообщений об ошибках. Можете ли вы попробовать [это решение] (http://dba.stackexchange.com/questions/31197/why-max-allowed-packet-is-larger-in-mysqldump-than-mysqld-in-my-cnf), а затем отчитаться с результатом? В принципе, увеличьте значение 'max_packet_size' до большего значения и попробуйте включить свою большую таблицу. –

+0

@ N.B. Спасибо за обновление. Я не получал никаких ошибок при прохождении процесса загрузки. Но, к сожалению, полные данные не были сброшены. Я попробую ваше решение ... –

ответ

1

Попробуйте добавить следующие строки в my.cnf и перезапустить

[mysqld] 
# Performance settings used for import. 
delay_key_write=ALL 
bulk_insert_buffer_size=256M 

или

mysqldump -u root -p --max_allowed_packet=1073741824 --lock-tables=false mydb > myfile.sql 
Смежные вопросы