Spec-Zone.ru › MySQL 5.7

4.5.5 mysqlimport — Программа импорта данных

Клиент mysqlimport предоставляет командную строку для LOAD DATA SQL-заявления. Большинство опций для mysqlimport напрямую соответствуют предложениям синтаксиса LOAD DATA. См. Раздел 13.2.6, «LOAD DATA Statement».

Вызвать mysqlimport можно так:

mysqlimport [options] db_name textfile1 [textfile2 ...]

Для каждого текстового файла, указанного в командной строке, mysqlimport удаляет любое расширение из имени файла и использует результат для определения имени таблицы, в которую следует импортировать содержимое файла. Например, файлы, имеющие имена patient.txt, patient.text и patient, будут импортированы в таблицу с именем patient.

mysqlimport поддерживает следующие опции, которые могут быть указаны в командной строке или в группах опций [mysqlimport] и [client] файла опций. Сведения о файлах опций, используемых программами MySQL, см. в Разделе 4.2.2.2, «Использование файлов опций».

Таблица 4.17 Параметры mysqlimport

Таблица 4.17 Параметры mysqlimport
Имя параметра Описание Введено Устарело
--bind-address Использовать указанный сетевой интерфейс для подключения к MySQL Server
--character-sets-dir Директория, где находятся наборы символов
--columns Этот параметр принимает в качестве значения список имён столбцов, разделённых запятыми
--compress Сжать всю информацию, передаваемую между клиентом и сервером
--debug Записать отладочный журнал
--debug-check Вывести отладочную информацию при завершении программы
--debug-info Вывести отладочную информацию, статистику использования памяти и ЦП при завершении программы
--default-auth Подключаемый модуль для аутентификации
--default-character-set Указать набор символов по умолчанию
--defaults-extra-file Прочитать указанный файл параметров дополнительно к обычным файлам параметров
--defaults-file Прочитать только указанный файл параметров
--defaults-group-suffix Значение суффикса группы параметров
--delete Очистить таблицу перед импортом текстового файла
--enable-cleartext-plugin Включить плагин аутентификации с открытым текстом 5.7.10
--fields-enclosed-by Этот параметр имеет то же значение, что и соответствующая клауза для LOAD DATA
--fields-escaped-by Этот параметр имеет то же значение, что и соответствующая клауза для LOAD DATA
--fields-optionally-enclosed-by Этот параметр имеет то же значение, что и соответствующая клауза для LOAD DATA
--fields-terminated-by Этот параметр имеет то же значение, что и соответствующая клауза для LOAD DATA
--force Продолжить, даже если произошла ошибка SQL
--get-server-public-key Запросить открытый ключ сервера RSA 5.7.23
--help Отобразить сообщение справки и выйти
--host Хост, на котором расположен MySQL-сервер
--ignore См. описание параметра --replace
--ignore-lines Пропустить первые N строк файла данных
--lines-terminated-by Этот параметр имеет то же значение, что и соответствующая клауза для LOAD DATA
--local Читать файлы ввода локально с хоста клиента
--lock-tables Заблокировать все таблицы для записи перед обработкой текстовых файлов
--login-path Прочитать параметры пути входа из .mylogin.cnf
--low-priority Использовать LOW_PRIORITY при загрузке таблицы
--no-defaults Не читать файлы параметров
--password Пароль для подключения к серверу
--pipe Подключение к серверу с помощью именованной трубы (только Windows)
--plugin-dir Директория, где установлены плагины
--port Номер порта TCP/IP для подключения
--print-defaults Вывести параметры по умолчанию
--protocol Протокол транспорта для использования
--replace Параметры --replace и --ignore управляют обработкой строк ввода, которые дублируют существующие строки по значениям уникальных ключей
--secure-auth Не отправлять пароли на сервер в старом формате (до 4.1) Да
--server-public-key-path Имя пути к файлу, содержащему открытый ключ RSA 5.7.23
--shared-memory-base-name Имя общей памяти для подключений общей памяти (только Windows)
--silent Выводить вывод только при возникновении ошибок
--socket Файл Unix-сокет или именованная труба Windows для использования
--ssl Включить шифрование соединения
--ssl-ca Файл, содержащий список доверенных центров сертификации SSL
--ssl-capath Директория, содержащая сертификаты доверенных центров сертификации SSL
--ssl-cert Файл, содержащий X.509-сертификат
--ssl-cipher Разрешенные шифры для шифрования соединения
--ssl-crl Файл, содержащий списки отзыва сертификатов
--ssl-crlpath Директория, содержащая файлы списков отзыва сертификатов
--ssl-key Файл, содержащий X.509-ключ
--ssl-mode Желаемое состояние безопасности соединения с сервером 5.7.11
--ssl-verify-server-cert Проверить имя хоста по имени общего имени (Common Name) в сертификате сервера
--tls-version Разрешенные протоколы TLS для шифрованных соединений 5.7.10
--use-threads Количество потоков для параллельной загрузки файлов
--user Имя пользователя MySQL для подключения к серверу
--verbose Подробный режим
--version Отобразить информацию о версии и выйти

  • --help, -?

    Формат командной строки --help

    Отобразить сообщение справки и выйти.

  • --bind-address=ip_address

    Формат командной строки --bind-address=ip_address

    На компьютере с несколькими сетевыми интерфейсами используйте этот параметр для выбора интерфейса, который будет использоваться для подключения к серверу MySQL.

  • --character-sets-dir=dir_name

    Формат командной строки --character-sets-dir=path
    Тип Строка
    Значение по умолчанию [none]

    Каталог, в котором установлены наборы символов. См. Раздел 10.15, «Настройка наборов символов».

  • --columns=column_list, -c column_list

    Формат командной строки --columns=column_list

    Этот параметр принимает список имен столбцов, разделенных запятыми. Порядок имен столбцов указывает, как сопоставить столбцы файла данных со столбцами таблицы.

  • --compress, -C

    Формат командной строки --compress[={OFF|ON}]
    Тип Булево
    Значение по умолчанию OFF

    Сжать всю информацию, передаваемую между клиентом и сервером, если это возможно. См. Раздел 4.2.6, «Управление сжатием подключений».

  • --debug[=debug_options], -# [debug_options]

    Формат командной строки --debug[=debug_options]
    Тип Строка
    Значение по умолчанию d:t:o

    Записать отладочный журнал. Типичная строка debug_options — d:t:o,file_name. По умолчанию — d:t:o.

    Этот параметр доступен только если MySQL был скомпилирован с использованием WITH_DEBUG. Выпускные двоичные файлы MySQL, предоставленные Oracle, не компилируются с этим параметром.

  • --debug-check

    Формат командной строки --debug-check
    Тип Булево
    Значение по умолчанию FALSE

    Вывести отладочную информацию при завершении программы.

    Этот параметр доступен только если MySQL был скомпилирован с использованием WITH_DEBUG. Выпускные двоичные файлы MySQL, предоставленные Oracle, не компилируются с этим параметром.

  • --debug-info

    Формат командной строки --debug-info
    Тип Булево
    Значение по умолчанию FALSE

    Вывести отладочную информацию и статистику использования памяти и ЦП при завершении программы.

    Этот параметр доступен только если MySQL был скомпилирован с использованием WITH_DEBUG. Выпускные двоичные файлы MySQL, предоставленные Oracle, не компилируются с этим параметром.

  • --default-character-set=charset_name

    Формат командной строки --default-character-set=charset_name
    Тип Строка

    Использовать charset_name в качестве набора символов по умолчанию. См. Раздел 10.15, «Настройка наборов символов».

  • --default-auth=plugin

    Формат командной строки --default-auth=plugin
    Тип Строка

    Подсказка о том, какой плагин проверки подлинности клиента следует использовать. См. Раздел 6.2.13, «Подключаемые модули проверки подлинности».

  • --defaults-extra-file=file_name

    Формат командной строки --defaults-extra-file=file_name
    Тип Имя файла

    Прочитать этот файл параметров после глобального файла параметров, но (в Unix) перед файлом параметров пользователя. Если файл не существует или недоступен, произойдёт ошибка. Если file_name не является абсолютным именем пути, оно интерпретируется относительно текущей директории.

    Дополнительную информацию об этом и других параметрах файлов параметров см. в Разделе 4.2.2.3, «Параметры командной строки, влияющие на обработку файлов параметров».

  • --defaults-file=file_name

    Формат командной строки --defaults-file=file_name
    Тип Имя файла

    Использовать только указанный файл параметров. Если файл не существует или недоступен, произойдёт ошибка. Если file_name не является абсолютным именем пути, оно интерпретируется относительно текущей директории.

    Исключение: даже с --defaults-file, клиентские программы читают .mylogin.cnf.

    Дополнительную информацию об этом и других параметрах файлов параметров см. в Разделе 4.2.2.3, «Параметры командной строки, влияющие на обработку файлов параметров».

  • --defaults-group-suffix=str

    Формат командной строки --defaults-group-suffix=str
    Тип Строка

    Прочитать не только обычные группы параметров, но и группы с обычными именами и суффиксом str. Например, mysqlimport обычно читает группы [client] и [mysqlimport]. Если этот параметр задан как --defaults-group-suffix=_other, mysqlimport также читает группы [client_other] и [mysqlimport_other].

    Дополнительную информацию об этом и других параметрах файлов параметров см. в Разделе 4.2.2.3, «Параметры командной строки, влияющие на обработку файлов параметров».

  • --delete, -D

    Формат командной строки --delete

    Очистить таблицу перед импортом текстового файла.

  • --enable-cleartext-plugin

    Командная строка --enable-cleartext-plugin
    Введено 5.7.10
    Тип Булево
    Значение по умолчанию FALSE

    Включить плагин аутентификации mysql_clear_password в открытом виде. (См. Раздел 6.4.1.6, «Клиентская аутентификация с плагином cleartext».)

    Этот параметр был добавлен в MySQL 5.7.10.

  • --fields-terminated-by=..., --fields-enclosed-by=..., --fields-optionally-enclosed-by=..., --fields-escaped-by=...

    Командная строка --fields-terminated-by=string
    Тип Строка
    Командная строка --fields-enclosed-by=string
    Тип Строка
    Командная строка --fields-optionally-enclosed-by=string
    Тип Строка
    Командная строка --fields-escaped-by
    Тип Строка

    Эти параметры имеют то же значение, что и соответствующие предложения для LOAD DATA. См. Раздел 13.2.6, «Оператор LOAD DATA».

  • --force, -f

    Командная строка --force

    Игнорировать ошибки. Например, если для текстового файла нет таблицы, продолжить обработку оставшихся файлов. Без --force, mysqlimport завершает работу, если таблица отсутствует.

  • --get-server-public-key

    Командная строка --get-server-public-key
    Введено 5.7.23
    Тип Булево

    Запросить у сервера открытый ключ, необходимый для обмена паролями на основе пары ключей RSA. Этот параметр относится к клиентам, которые аутентифицируются с помощью плагина аутентификации caching_sha2_password. Для этого плагина сервер не отправляет открытый ключ, если его не запросить. Этот параметр игнорируется для учётных записей, которые не аутентифицируются с этим плагином. Он также игнорируется, если обмен паролями на основе RSA не используется, как это происходит, когда клиент подключается к серверу с помощью защищённого соединения.

    Если указан --server-public-key-path=file_name и указывает действительный файл открытого ключа, он имеет приоритет над --get-server-public-key.

    Дополнительная информация о плагине caching_sha2_password приведена в Разделе 6.4.1.4, «Caching SHA-2 Pluggable Authentication».

    Параметр --get-server-public-key был добавлен в MySQL 5.7.23.

  • --host=host_name, -h host_name

    Командная строка --host=host_name
    Тип Строка
    Значение по умолчанию localhost

    Импортировать данные на MySQL-сервер на заданном хосте. Хост по умолчанию — localhost.

  • --ignore, -i

    Командная строка --ignore

    См. описание параметра --replace.

  • --ignore-lines=N

    Командная строка --ignore-lines=#
    Тип Числовое

    Игнорировать первые N строк файла данных.

  • --lines-terminated-by=...

    Командная строка --lines-terminated-by=string
    Тип Строка

    Этот параметр имеет то же значение, что и соответствующее предложение для LOAD DATA. Например, для импорта файлов Windows, в которых строки завершаются парами возврата каретки/перевода строки, используйте --lines-terminated-by="\r\n". (Возможно, вам придётся удвоить обратные косые черты в зависимости от правил экранирования вашего интерпретатора команд.) См. Раздел 13.2.6, «Оператор LOAD DATA».

  • --local, -L

    Командная строка --local
    Тип Булево
    Значение по умолчанию FALSE

    По умолчанию файлы считываются сервером на серверном хосте. С этим параметром mysqlimport считывает входные файлы локально на хосте клиента.

    Успешное выполнение операций загрузки LOCAL в mysqlimport также требует, чтобы сервер разрешал локальную загрузку; см. Раздел 6.1.6, «Учет соображений безопасности для LOAD DATA LOCAL»

  • --lock-tables, -l

    Командная строка --lock-tables

    Блокировать все таблицы для записи перед обработкой любых текстовых файлов. Это гарантирует, что все таблицы синхронизированы на сервере.

  • --login-path=name

    Командная строка --login-path=name
    Тип Строка

    Считывать параметры из указанного пути авторизации в файле пути авторизации .mylogin.cnf. «Путь авторизации» — это группа параметров, содержащая параметры, которые указывают, к какому MySQL-серверу подключиться и под какой учетной записью пройти аутентификацию. Для создания или изменения файла пути авторизации используйте утилиту mysql_config_editor. См. Раздел 4.6.6, «mysql_config_editor — Утилита конфигурации MySQL».

    Дополнительную информацию об этом и других параметрах файлов см. в Разделе 4.2.2.3, «Параметры командной строки, влияющие на обработку файлов параметров».

  • --low-priority

    Формат командной строки --low-priority

    Используйте LOW_PRIORITY при загрузке таблицы. Это влияет только на движки хранения, которые используют только блокировку на уровне таблицы (такие как MyISAM, MEMORY и MERGE).

  • --no-defaults

    Формат командной строки --no-defaults

    Не читать файлы параметров. Если запуск программы терпит неудачу из-за чтения неизвестных параметров из файла параметров, --no-defaults может быть использован для предотвращения их чтения.

    Исключением является файл .mylogin.cnf, который читается во всех случаях, если он существует. Это позволяет указывать пароли более безопасным способом, чем в командной строке, даже когда используется --no-defaults. Для создания файла .mylogin.cnf используйте утилиту mysql_config_editor. См. Раздел 4.6.6, “mysql_config_editor — Утилита конфигурации MySQL”.

    Дополнительную информацию об этом и других параметрах файлов параметров см. в Разделе 4.2.2.3, “Параметры командной строки, влияющие на обработку файлов параметров”.

  • --password[=password], -p[password]

    Формат командной строки --password[=password]
    Тип Строка

    Пароль учетной записи MySQL, используемой для подключения к серверу. Значение пароля необязательно. Если оно не указано, mysqlimport запросит его. Если указано, не должно быть пробела между --password= или -p и следующим за ним паролем. Если параметр пароля не указан, по умолчанию не передается пароль.

    Указание пароля в командной строке следует считать небезопасным. Чтобы избежать ввода пароля в командной строке, используйте файл параметров. См. Раздел 6.1.2.1, “Рекомендации для пользователей по безопасности паролей”.

    Чтобы явно указать, что пароль отсутствует и что mysqlimport не должен запрашивать его, используйте параметр --skip-password.

  • --pipe, -W

    Формат командной строки --pipe
    Тип Строка

    В Windows подключайтесь к серверу с помощью именованного канала. Этот параметр применяется только в том случае, если сервер был запущен с включенной системной переменной named_pipe для поддержки подключений по именованным каналам. Кроме того, пользователь, осуществляющий подключение, должен быть членом группы Windows, указанной системной переменной named_pipe_full_access_group.

  • --plugin-dir=dir_name

    Формат командной строки --plugin-dir=dir_name
    Тип Имя каталога

    Каталог, в котором следует искать плагины. Укажите этот параметр, если используется параметр --default-auth для указания плагина аутентификации, но mysqlimport не находит его. См. Раздел 6.2.13, “Плагины аутентификации”.

  • --port=port_num, -P port_num

    Формат командной строки --port=port_num
    Тип Числовое
    Значение по умолчанию 3306

    Номер порта для подключений TCP/IP.

  • --print-defaults

    Формат командной строки --print-defaults

    Выводит имя программы и все параметры, полученные из файлов параметров.

    Дополнительную информацию об этом и других параметрах файлов параметров см. в Разделе 4.2.2.3, “Параметры командной строки, влияющие на обработку файлов параметров”.

  • --protocol={TCP|SOCKET|PIPE|MEMORY}

    Формат командной строки --protocol=type
    Тип Строка
    Значение по умолчанию [see text]
    Допустимые значения

    TCP

    SOCKET

    PIPE

    MEMORY

    Протокол передачи для подключения к серверу. Полезно, когда другие параметры подключения обычно приводят к использованию протокола, отличного от желаемого. Подробности о допустимых значениях см. в Разделе 4.2.5, “Протоколы передачи подключений”.

  • --replace, -r

    Формат командной строки --replace

    Параметры --replace и --ignore управляют обработкой строк входных данных, которые дублируют существующие строки по значениям уникальных ключей. Если вы указываете --replace, новые строки заменяют существующие строки, имеющие одинаковое значение уникального ключа. Если вы указываете --ignore, строки входных данных, дублирующие существующую строку по уникальному значению ключа, пропускаются. Если ни один из параметров не указан, при обнаружении дублирующего значения ключа произойдет ошибка, и остальная часть текстового файла будет проигнорирована.

  • --secure-auth

    Формат командной строки --secure-auth
    Устарело Да

    Не отправлять пароли на сервер в старом формате (до версии 4.1). Это предотвращает подключения, за исключением серверов, использующих новый формат пароля.

    Начиная с MySQL 5.7.5, этот параметр устарел; ожидайте его удаления в будущих версиях MySQL. Он всегда включен, и попытка его отключения (--skip-secure-auth, --secure-auth=0) приводит к ошибке. До MySQL 5.7.5 этот параметр включен по умолчанию, но может быть отключен.

    Примечание

    Пароли, использующие метод хеширования до версии 4.1, менее безопасны, чем пароли, использующие родной метод хеширования паролей, и их следует избегать. Пароли до версии 4.1 устарели, и поддержка их была удалена в MySQL 5.7.5. Инструкции по обновлению учетных записей см. в Разделе 6.4.1.3, “Миграция от хеширования паролей до версии 4.1 и плагина mysql_old_password”.

  • --server-public-key-path=file_name

    Формат командной строки --server-public-key-path=file_name
    Введено 5.7.23
    Тип Имя файла

    Путь к файлу в формате PEM, содержащему копию открытого ключа клиента, необходимую серверу для обмена паролями на основе пары ключей RSA. Этот параметр применяется к клиентам, которые аутентифицируются с помощью плагина аутентификации sha256_password или caching_sha2_password. Этот параметр игнорируется для учетных записей, которые не аутентифицируются с помощью одного из этих плагинов. Он также игнорируется, если обмен паролями на основе RSA не используется, как в случае, когда клиент подключается к серверу с использованием защищённого соединения.

    Если --server-public-key-path=file_name задан и указывает на допустимый файл открытого ключа, он имеет приоритет над --get-server-public-key.

    Для sha256_password, этот параметр применяется только в том случае, если MySQL был скомпилирован с использованием OpenSSL.

    Сведения о плагинах sha256_password и caching_sha2_password см. в разделе 6.4.1.5, «SHA-256 Pluggable Authentication» и разделе 6.4.1.4, «Caching SHA-2 Pluggable Authentication».

    Параметр --server-public-key-path был добавлен в MySQL 5.7.23.

  • --shared-memory-base-name=name

    Формат командной строки --shared-memory-base-name=name
    Зависит от платформы Windows

    В Windows, имя разделяемой памяти для подключений, использующих общую память к локальному серверу. Значение по умолчанию - MYSQL. Имя разделяемой памяти чувствительно к регистру.

    Этот параметр применяется только в том случае, если сервер был запущен с включённой системной переменной shared_memory для поддержки подключений с общей памятью.

  • --silent, -s

    Формат командной строки --silent

    Тихий режим. Вывод только при возникновении ошибок.

  • --socket=path, -S path

    Формат командной строки --socket={file_name|pipe_name}
    Тип Строка

    Для подключений к localhost, файл Unix-соккета для использования или, в Windows, имя именованной трубы.

    В Windows этот параметр применяется только в том случае, если сервер был запущен с включённой системной переменной named_pipe для поддержки подключений через именованные трубы. Кроме того, пользователь, производящий подключение, должен быть членом группы Windows, указанной в системной переменной named_pipe_full_access_group.

  • --ssl*

    Параметры, начинающиеся с --ssl, указывают, следует ли подключаться к серверу с использованием шифрования, и указывают, где найти SSL-ключи и сертификаты. См. Параметры командной строки для защищённых подключений.

  • --tls-version=protocol_list

    Формат командной строки --tls-version=protocol_list
    Введено 5.7.10
    Тип Строка
    Значение по умолчанию (≥ 5.7.28) TLSv1,TLSv1.1,TLSv1.2
    Значение по умолчанию (≤ 5.7.27)

    TLSv1,TLSv1.1,TLSv1.2 (OpenSSL)

    TLSv1,TLSv1.1 (yaSSL)

    Разрешённые TLS-протоколы для защищённых подключений. Значение — список одного или нескольких имён протоколов, разделённых запятыми. Протоколы, которые могут быть указаны для этого параметра, зависят от используемой библиотеки SSL для компиляции MySQL. Подробности см. в разделе 6.3.2, «TLS-протоколы и шифры защищённых подключений».

    Этот параметр был добавлен в MySQL 5.7.10.

  • --user=user_name, -u user_name

    Формат командной строки --user=user_name,
    Тип Строка

    Имя пользователя учётной записи MySQL для подключения к серверу.

  • --use-threads=N

    Формат командной строки --use-threads=#
    Тип Числовое

    Загрузка файлов параллельно с использованием N потоков.

  • --verbose, -v

    Формат командной строки --verbose

    Режим подробной информации. Выводить больше информации о действиях программы.

  • --version, -V

    Формат командной строки --version

    Отобразить информацию о версии и завершить работу.

Вот пример сеанса, демонстрирующего использование mysqlimport:

$> mysql -e 'CREATE TABLE imptest(id INT, n VARCHAR(30))' test
$> ed
a
100     Max Sydow
101     Count Dracula
.
w imptest.txt
32
q
$> od -c imptest.txt
0000000   1   0   0  \t   M   a   x       S   y   d   o   w  \n   1   0
0000020   1  \t   C   o   u   n   t       D   r   a   c   u   l   a  \n
0000040
$> mysqlimport --local test imptest.txt
test.imptest: Records: 2  Deleted: 0  Skipped: 0  Warnings: 0
$> mysql -e 'SELECT * FROM imptest' test
+------+---------------+
| id   | n             |
+------+---------------+
|  100 | Max Sydow     |
|  101 | Count Dracula |
+------+---------------+

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/mysqlimport.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API