Перезалить огромную таблицу - MySQL
Формулировка задачи:
Добрый день. У нас есть таблица, которая в SQL формате занимает гигов 70.
Эта же таблица есть в текстовом формате(30 гигов). Значения там организованны так: "поле1:поле2", т.е. данные через двоеточие указаны.
Необходимо всю эту вакханалию как-нибудь залить на сервер. Какой файл заливать - 70-гиговый .sql или 30-гиговый .txt - мне без разницы, лишь бы это как нибудь получилось без кастылей и целого дня у компа.
Решение задачи: «Перезалить огромную таблицу»
textual
Листинг программы
mysqlimport --ignore-lines=1 --fields-terminated-by=: --columns='field_1,field_2,field_3,field_N' --local -u root -p Database /path/to/csvfile/my_dump.csv
Объяснение кода листинга программы
В данном коде происходит импорт данных из файла CSV в таблицу базы данных MySQL. Вот список действий, которые выполняются в данном коде:
mysqlimport
— это утилита MySQL, которая используется для импорта данных из файлов формата CSV, TXT или XML в таблицы базы данных MySQL.--ignore-lines=1
— это опцияmysqlimport
, которая указывает количество строк в начале файла, которые следует игнорировать. В данном случае, первая строка (строка с заголовками столбцов) будет проигнорирована.--fields-terminated-by=:
— это опцияmysqlimport
, которая указывает символ, который используется в качестве разделителя между полями в файле CSV. В данном случае, поля разделены символом:
.--columns='field_1,field_2,field_3,field_N'
— это опцияmysqlimport
, которая указывает столбцы, которые следует импортировать. В данном случае, импортируются столбцыfield_1
,field_2
,field_3
иfield_N
.--local
— это опцияmysqlimport
, которая указывает, что файл находится на локальном дисковом разделе.-u root
— это опцияmysqlimport
, которая указывает имя пользователя базы данных MySQL. В данном случае, используется имя пользователяroot
.-p Database
— это опцияmysqlimport
, которая указывает имя базы данных MySQL. В данном случае, используется база данныхDatabase
./path/to/csvfile/my_dump.csv
— это путь к файлу CSV, который следует импортировать. В данном случае, файл называетсяmy_dump.csv
и находится в каталоге/path/to/csvfile/
.