mysqlimport 客户端为 LOAD DATA 语句提供了一个命令行接口,它的部分选项对应了 LOAD DATA 语法的子句。
选项
帮助选项
- –help, -?
- 显示帮助信息
- –version, -V
- 显示版本信息并退出
连接选项
- –bind-address=ip_address
- 在具有多个网络接口的计算机上,使用此选项选择用于连接到 MySQL 服务器的接口
- –default-auth=plugin
- 客户端的默认身份认证插件
- –enable-cleartext-plugin
- 启用 mysql_clear_password 明文身份验证插件
- –host=host_name, -h host_name
- 主机名
- –login-path=name
- 从登录路径文件 .mylogin.cnf 中读取选项
- –password[=password], -p
此处含有隐藏内容,需要正确输入密码后可见!
- 密码。选项和密码之间不能有空格。使用 –skip-password 跳过密码
–pipe, -W在 Windows 上,使用命名管道连接到服务器。
- –plugin-dir=dir_name
- 插件目录。如果 –default-auth 指定了插件但是找不到,可以指定此选项。
- –port=port_num, -P port_num
- TCP/IP 连接的端口
- –protocol={TCP|SOCKET|PIPE|MEMORY}
- 连接到服务端所用的传输协议
- –server-public-key-path=file_name
- PEM 格式的文件的路径名,其中包含服务器用于基于 RSA 密钥对的密码交换所需的公用密钥的客户端副本
- 此选项适用于使用 sha256_password 或 caching_sha2_password 身份验证插件进行身份验证的客户端。
- 如果给定了此选项,并指定了有效的公钥文件,则它优先于 –get-server-public-key。
–shared-memory-base-name=name在 Windows 上,共享内存名称,用于使用共享内存与本地服务器建立的连接。默认值为 MYSQL。
- –socket=path, -S path
- socket 路径
- –ssl*
- 以 ssl 开头的选项表示是否使用 SSL 连接,以及 SSL 密钥和证书的路径
- –ssl-fips-mode={OFF|ON|STRICT}
- 是否在客户端上启用 FIPS 模式
- –tls-ciphersuites=ciphersuite_list
- 使用 TLSv1.3 的加密连接的允许密码列表
- –tls-version=protocol_list
- 加密连接允许的 TLS 协议
- –user=user_name, -u user_name
- 用户
- –zstd-compression-level=level
- zstd 算法的压缩级别,允许的压缩级别是 1-22,默认是3
–compress, -C已过时,将来会删除。
如果可能,压缩客户端和服务器之间发送的所有信息
- –compression-algorithms=value
- 用于连接到服务器的允许的压缩算法。默认未压缩
- –get-server-public-key
- 从服务端请求基于 RSA 密钥对的密码交换所需的公共密钥。 此选项适用于使用 caching_sha2_password 身份验证插件进行身份验证的客户端
国际化选项
- –character-sets-dir=dir_name
- 字符集的安装目录
- –default-character-set=charset_name
- 客户端默认字符集
调试选项
–debug[=debug_options], -# [debug_options]MySQL 的二进制发行版不是以此选项构建的。
编写调试日志。 典型的 debug_options 字符串是 d:t:o,file_name。 默认值为 d:t:o,/tmp/mysql.trace。 仅当 MySQL 是使用 WITH_DEBUG 构建的时,此选项才可用
–debug-checkMySQL 的二进制发行版不是以此选项构建的。
程序退出时,打印一些调试信息。 仅当 MySQL 是使用 WITH_DEBUG 构建的时,此选项才可用。
–debug-info, -TMySQL 的二进制发行版不是以此选项构建的。
程序退出时,打印调试信息以及内存和CPU使用情况统计信息。 仅当 MySQL 是使用 WITH_DEBUG 构建的时,此选项才可用。
- –force, -f
- 强制执行 (即使报错也执行)
- –silent, -s
- 安静模式,产生较少的输出。可以多次指定,以产生越来越少的输出。
- 此选项导致非表格输出和特殊字符转义,可以使用 –raw 禁用字符转义。
- –verbose, -v
- 详细模式。产生有关程序功能的更多输出。可以多次指定此选项 (如 -v -v -v),以产生越来越多的输出。
配置文件选项
- –defaults-extra-file=file_name
- 额外的配置文件。在全局配置文件之后,用户配置文件之前会读取此文件。
- –defaults-group-suffix=str
- 选项组名称的后缀
如果 –defaults-group-suffix=_other,mysql 也会读取 [client_other] 和 [mysql_other] 组。
- 选项组名称的后缀
-
–no-defaults
- 不读取任何配置文件 (.mylogin.cnf 例外)
- –print-defaults
- 打印输出程序名称和所有读取的配置文件内容
文件加载选项
- –delete, -D
- 导入数据文件前清空表
- –fields-terminated-by=…, –fields-enclosed-by=…, –fields-optionally-enclosed-by=…, –fields-escaped-by=…
- 分隔符
- –ignore-lines=N
- 忽略数据文件的前 N 行
- –lines-terminated-by=…
- 行分隔符
- –local, -L
- 在客户端主机上本地读取输入数据文件
- –lock-tables, -l
- 处理数据文件前,锁表
- –low-priority
- 低优先级。加载表时使用 LOW_PRIORITY
- 仅影响使用表级锁定的存储引擎。例如, MyISAM,MEMORY 和 MERGE
- –ignore, -i
- 导入时,忽略唯一键值的现有行
- –replace, -r
- 导入时,覆盖唯一键值的现有行
- 如果不指定 –replace 或 –ignore,则遇到重复键时报错
- –columns=column_list, -c column_list
- 字段列表
- –use-threads=N
- 使用 N 个线程并行加载文件
配置
调用语法
mysqlimport [options] db_name textfile1 [textfile2 ...]
- textfile
- 文件名后缀没有实际意义。
例如,patient.txt, patient.text 和 patient,都会导入到 patient 表中。
- 文件名后缀没有实际意义。
-
options
- mysqlimport 的选项可以在配置文件的 [mysqlimport] 和 [client] 标签组中指定。
示例
shell> mysql -e 'CREATE TABLE imptest(id INT, n VARCHAR(30))' test
shell> ed
a
100 Max Sydow
101 Count Dracula
.
w imptest.txt
32
q
shell> 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
shell> mysqlimport --local test imptest.txt
test.imptest: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
shell> mysql -e 'SELECT * FROM imptest' test
+------+---------------+
| id | n |
+------+---------------+
| 100 | Max Sydow |
| 101 | Count Dracula |
+------+---------------+