2010-09-14 5 views
-1

У меня есть таблица с 45 миллионами из базы данных mysql, я хочу экспортировать эти данные в формате .csv, что лучше всего делать, не затрагивая существующую производительность других таблиц (когда эта операция выполнено)?Экспорт данных из таблицы

Спасибо.

+0

Может быть лучше спрошено на serverfault, но, конечно, основным усилением производительности было бы сделать это на реплицированном резервном сервере, а не в «живом». – Wrikken

+0

Если вы щелкните правой кнопкой мыши и начнете экспортировать, потребуется много времени, я думаю, можем ли мы использовать любой другой подход, чем этот. Экспорт 45 миллионов в одной попытке не является хорошим подходом. – Sharpeye500

ответ

1

Ok я понял это,

экспортировать -> выбрать * в Outfile 'с: /tmp/outfile.txt' полей заканчивающихся '' от имя_таблицы;

Импортировать

LOAD DATA LOCAL INFILE 'C: /tmp/outfile.txt' INTO TABLE newtablename ПОЛЯ TERMINATED BY '' ЛИНИИ TERMINATED BY '\ п';

0
select * from table_name into outfile '/tmp/output_file.csv'; 

Однако у вас может возникнуть проблема «Невозможно создать/записать в файл», тогда вы можете сделать следующий код.

USE mysql; 
UPDATE user SET File_priv = 'Y' WHERE User = 'db_user'; 
FLUSH PRIVILEGES; 

Затем вы можете экспортировать таблицу.