The mysqlimport client provides a
command-line interface to the
LOAD DATA
INFILE SQL statement. Most options to
mysqlimport correspond directly to clauses of
LOAD DATA
INFILE syntax. See Section 13.2.6, “LOAD DATA INFILE Syntax”.
Invoke mysqlimport like this:
shell> mysqlimport [options] db_name textfile1 [textfile2 ...]
For each text file named on the command line,
mysqlimport strips any extension from the
file name and uses the result to determine the name of the table
into which to import the file's contents. For example, files
named patient.txt,
patient.text, and
patient all would be imported into a table
named patient.
mysqlimport supports the following options,
which can be specified on the command line or in the
[mysqlimport] and [client]
groups of an option file. For information about option files
used by MySQL programs, see Section 4.2.6, “Using Option Files”.
Table 4.12 mysqlimport Options
| Format | Description | Introduced |
|---|---|---|
| --columns | This option takes a comma-separated list of column names as its value | |
| --compress | Compress all information sent between client and server | |
| --debug | Write debugging log | |
| --debug-check | Print debugging information when program exits | |
| --debug-info | Print debugging information, memory, and CPU statistics when program exits | |
| --default-auth | Authentication plugin to use | 5.5.10 |
| --default-character-set | Specify default character set | |
| --defaults-extra-file | Read named option file in addition to usual option files | |
| --defaults-file | Read only named option file | |
| --defaults-group-suffix | Option group suffix value | |
| --delete | Empty the table before importing the text file | |
| --enable-cleartext-plugin | Enable cleartext authentication plugin | 5.5.47 |
| --fields-enclosed-by | This option has the same meaning as the corresponding clause for LOAD DATA INFILE | |
| --fields-escaped-by | This option has the same meaning as the corresponding clause for LOAD DATA INFILE | |
| --fields-optionally-enclosed-by | This option has the same meaning as the corresponding clause for LOAD DATA INFILE | |
| --fields-terminated-by | This option has the same meaning as the corresponding clause for LOAD DATA INFILE | |
| --force | Continue even if an SQL error occurs | |
| --help | Display help message and exit | |
| --host | Connect to MySQL server on given host | |
| --ignore | See the description for the --replace option | |
| --ignore-lines | Ignore the first N lines of the data file | |
| --lines-terminated-by | This option has the same meaning as the corresponding clause for LOAD DATA INFILE | |
| --local | Read input files locally from the client host | |
| --lock-tables | Lock all tables for writing before processing any text files | |
| --low-priority | Use LOW_PRIORITY when loading the table. | |
| --no-defaults | Read no option files | |
| --password | Password to use when connecting to server | |
| --pipe | On Windows, connect to server using named pipe | |
| --plugin-dir | Directory where plugins are installed | 5.5.10 |
| --port | TCP/IP port number to use for connection | |
| --print-defaults | Print default options | |
| --protocol | Connection protocol to use | |
| --replace | The --replace and --ignore options control handling of input rows that duplicate existing rows on unique key values | |
| --shared-memory-base-name | The name of shared memory to use for shared-memory connections | |
| --silent | Produce output only when errors occur | |
| --socket | For connections to localhost, the Unix socket file to use | |
| --ssl | Enable secure connection | |
| --ssl-ca | Path of file that contains list of trusted SSL CAs | |
| --ssl-capath | Path of directory that contains trusted SSL CA certificates in PEM format | |
| --ssl-cert | Path of file that contains X509 certificate in PEM format | |
| --ssl-cipher | List of permitted ciphers to use for connection encryption | |
| --ssl-key | Path of file that contains X509 key in PEM format | |
| --ssl-mode | Security state of connection to server | 5.5.49 |
| --ssl-verify-server-cert | Verify server certificate Common Name value against host name used when connecting to server | |
| --use-threads | Number of threads for parallel file-loading | |
| --user | MySQL user name to use when connecting to server | |
| --verbose | Verbose mode | |
| --version | Display version information and exit |
--help,
-?
Display a help message and exit.
The output generated by using --events
contains CREATE EVENT
statements to create the events. However, these statements
do not include attributes such as the event creation and
modification timestamps, so when the events are reloaded,
they are created with timestamps equal to the reload time.
If you require events to be created with their original
timestamp attributes, do not use --events.
Instead, dump and reload the contents of the
mysql.event table directly, using a MySQL
account that has appropriate privileges for the
mysql database.
On a computer having multiple network interfaces, use this option to select which interface to use for connecting to the MySQL server.
This option is supported only in the version of mysqlimport that is supplied with MySQL Cluster. It is not available in standard MySQL Server 5.5 releases.
The directory where character sets are installed. See Section 10.5, “Character Set Configuration”.
--columns=,
column_list-c
column_list
This option takes a comma-separated list of column names as its value. The order of the column names indicates how to match data file columns with table columns.
--compress,
-C
Compress all information sent between the client and the server if both support compression.
--debug[=,
debug_options]-#
[
debug_options]
Write a debugging log. A typical
debug_options string is
d:t:o,.
The default is file_named:t:o.
Print some debugging information when the program exits.
Print debugging information and memory and CPU usage statistics when the program exits.
--default-character-set=
charset_name
Use charset_name as the default
character set. See Section 10.5, “Character Set Configuration”.
A hint about the client-side authentication plugin to use. See Section 6.3.6, “Pluggable Authentication”.
This option was added in MySQL 5.5.10.
--defaults-extra-file=
file_name
Read this option file after the global option file but (on
Unix) before the user option file. If the file does not
exist or is otherwise inaccessible, an error occurs. Before
MySQL 5.5.8, file_name must be
the full path name to the file. As of MySQL 5.5.8, the name
is interpreted relative to the current directory if given as
a relative path name.
Use only the given option file. If the file does not exist
or is otherwise inaccessible, an error occurs. Before MySQL
5.5.8, file_name must be the full
path name to the file. As of MySQL 5.5.8, the name is
interpreted relative to the current directory if given as a
relative path name.
Read not only the usual option groups, but also groups with
the usual names and a suffix of
str. For example,
mysqlimport normally reads the
[client] and
[mysqlimport] groups. If the
--defaults-group-suffix=_other
option is given, mysqlimport also reads
the [client_other] and
[mysqlimport_other] groups.
--delete,
-D
Empty the table before importing the text file.
Enable the mysql_clear_password cleartext
authentication plugin. (See
Section 6.5.1.5, “The Cleartext Client-Side Authentication Plugin”.)
This option was added in MySQL 5.5.47.
--fields-terminated-by=...,
--fields-enclosed-by=...,
--fields-optionally-enclosed-by=...,
--fields-escaped-by=...
These options have the same meaning as the corresponding
clauses for LOAD
DATA INFILE. See Section 13.2.6, “LOAD DATA INFILE Syntax”.
--force,
-f
Ignore errors. For example, if a table for a text file does
not exist, continue processing any remaining files. Without
--force,
mysqlimport exits if a table does not
exist.
--host=,
host_name-h
host_name
Import data to the MySQL server on the given host. The
default host is localhost.
--ignore,
-i
See the description for the
--replace option.
Ignore the first N lines of the
data file.
This option has the same meaning as the corresponding clause
for LOAD DATA
INFILE. For example, to import Windows files that
have lines terminated with carriage return/linefeed pairs,
use
--lines-terminated-by="\r\n".
(You might have to double the backslashes, depending on the
escaping conventions of your command interpreter.) See
Section 13.2.6, “LOAD DATA INFILE Syntax”.
--local,
-L
Read input files locally from the client host.
--lock-tables,
-l
Lock all tables for writing before processing any text files. This ensures that all tables are synchronized on the server.
Use LOW_PRIORITY when loading the table.
This affects only storage engines that use only table-level
locking (such as MyISAM,
MEMORY, and MERGE).
Do not read any option files. If program startup fails due
to reading unknown options from an option file,
--no-defaults can be
used to prevent them from being read.
--password[=,
password]-p[
password]
The password to use when connecting to the server. If you
use the short option form (-p), you
cannot have a space between the option
and the password. If you omit the
password value following the
--password or
-p option on the command line,
mysqlimport prompts for one.
Specifying a password on the command line should be considered insecure. See Section 6.1.2.1, “End-User Guidelines for Password Security”. You can use an option file to avoid giving the password on the command line.
--pipe,
-W
On Windows, connect to the server using a named pipe. This option applies only if the server supports named-pipe connections.
The directory in which to look for plugins. Specify this
option if the
--default-auth option is
used to specify an authentication plugin but
mysqlimport does not find it. See
Section 6.3.6, “Pluggable Authentication”.
This option was added in MySQL 5.5.10.
--port=,
port_num-P
port_num
The TCP/IP port number to use for the connection.
Print the program name and all options that it gets from option files.
--protocol={TCP|SOCKET|PIPE|MEMORY}
The connection protocol to use for connecting to the server. It is useful when the other connection parameters normally would cause a protocol to be used other than the one you want. For details on the permissible values, see Section 4.2.2, “Connecting to the MySQL Server”.
--replace,
-r
The --replace and
--ignore options control
handling of input rows that duplicate existing rows on
unique key values. If you specify
--replace, new rows
replace existing rows that have the same unique key value.
If you specify --ignore,
input rows that duplicate an existing row on a unique key
value are skipped. If you do not specify either option, an
error occurs when a duplicate key value is found, and the
rest of the text file is ignored.
--shared-memory-base-name=
name
On Windows, the shared-memory name to use, for connections
made using shared memory to a local server. The default
value is MYSQL. The shared-memory name is
case sensitive.
The server must be started with the
--shared-memory option to
enable shared-memory connections.
--silent,
-s
Silent mode. Produce output only when errors occur.
--socket=,
path-S
path
For connections to localhost, the Unix
socket file to use, or, on Windows, the name of the named
pipe to use.
Options that begin with
--ssl specify whether to
connect to the server using SSL and indicate where to find
SSL keys and certificates. See
Section 6.4.5, “Command Options for Secure Connections”.
--user=,
user_name-u
user_name
The MySQL user name to use when connecting to the server.
Load files in parallel using N
threads.
--verbose,
-v
Verbose mode. Print more information about what the program does.
--version,
-V
Display version information and exit.
Here is a sample session that demonstrates use of mysqlimport:
shell>mysql -e 'CREATE TABLE imptest(id INT, n VARCHAR(30))' testshell>eda 100 Max Sydow 101 Count Dracula . w imptest.txt 32 q shell>od -c imptest.txt0000000 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 shell>mysqlimport --local test imptest.txttest.imptest: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0 shell>mysql -e 'SELECT * FROM imptest' test+------+---------------+ | id | n | +------+---------------+ | 100 | Max Sydow | | 101 | Count Dracula | +------+---------------+