10、MySQL 8.0参考手册 4.5.5 mysqlimport - 数据导入程序

mysqlimport的客户提供了一个命令行界面的 LOAD DATA INFILESQL语句。mysqlimport的大多数选项 直接对应于LOAD DATA INFILE语法的子句 请参见第13.2.7节“LOAD DATA INFILE语法”

像这样 调用mysqlimport

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

对于在命令行上命名的每个文本文件, mysqlimport将从文件名剥离任何扩展名,并使用结果来确定导入文件内容的表的名称。例如,命名为patient.txt, patient.textpatient全部的文件将被导入到名为的表中patient

mysqlimport支持以下选项,它们可以在命令行或 选项文件的组[mysqlimport][client]组中指定。有关MySQL程序使用的选项文件的信息,请参见第4.2.6节“使用选项文件”

表4.12 mysqlimport选项

格式 描述 介绍 删除
--bind地址 使用指定的网络接口连接到MySQL服务器    
- 列 该选项以逗号分隔的列名列表作为其值    
- 压缩 压缩客户端和服务器之间发送的所有信息    
--debug 编写调试日志    
--debug检查 程序退出时打印调试信息    
- 调试信息 打印程序退出时的调试信息,内存和CPU统计信息    
--default-AUTH 身份验证插件使用    
--default-字符集 指定默认字符集    
--defaults-额外文件 除了通常的选项文件外,还可以读取已命名的选项    
--defaults文件 只读取命名的选项文件    
--defaults基团的后缀 选项组后缀值    
- 删除 在导入文本文件之前清空表格    
--enable-明文-插件 启用明文身份验证插件    
--fields封闭逐 该选项与LOAD DATA INFILE的对应子句具有相同的含义    
--fields转义,由 该选项与LOAD DATA INFILE的对应子句具有相同的含义    
--fields-任选封闭逐 该选项与LOAD DATA INFILE的对应子句具有相同的含义    
--fields封端逐 该选项与LOAD DATA INFILE的对应子句具有相同的含义    
- 力 即使发生SQL错误也继续    
--get-服务器的公钥 从服务器请求RSA公钥 8.0.3  
- 帮帮我 显示帮助信息并退出    
- 主办 连接到给定主机上的MySQL服务器    
- 忽视 请参阅--replace选项的说明    
- 忽略线 忽略数据文件的前N行    
--lines封端逐 该选项与LOAD DATA INFILE的对应子句具有相同的含义    
- 本地 从客户端主机本地读取输入文件    
--lock桌 在处理任何文本文件之前锁定所有表格进行写入    
--login路径 阅读.mylogin.cnf中的登录路径选项    
- 低优先级 加载表格时使用LOW_PRIORITY。    
--no-默认 不读取任何选项文件    
- 密码 连接到服务器时使用的密码    
- 管 在Windows上,使用命名管道连接到服务器    
--plugin-DIR 安装插件的目录    
- 港口 用于连接的TCP / IP端口号    
--print-默认 打印默认选项    
- 协议 使用连接协议    
- 更换 --replace和--ignore选项控制对唯一键值上的现有行进行复制的输入行的处理    
--secure-auth的 不要以旧(4.1以前)格式向服务器发送密码   8.0.3
--server-公钥路径 包含RSA公钥的文件的路径名称 8.0.4  
--shared存储器碱基名 用于共享内存连接的共享内存的名称    
- 无声 仅当发生错误时才生成输出    
- 插座 用于连接到localhost,要使用的Unix套接字文件    
--ssl-CA 包含可信SSL证书颁发机构列表的文件    
--ssl-capath 包含可信SSL证书颁发机构证书文件的目录    
--ssl证书 包含X509证书的文件    
--ssl-密码 允许连接加密的密码列表    
--ssl-CRL 包含证书吊销列表的文件    
--ssl-crlpath 包含证书撤销列表文件的目录    
--ssl键 包含X509密钥的文件    
--ssl模式 连接到服务器的安全状态    
--tls版本 允许加密连接的协议    
--use线程 并行文件加载的线程数    
- 用户 连接到服务器时使用的MySQL用户名    
--verbose 详细模式    
- 版 显示版本信息并退出    

  • --help, -?

    显示帮助信息并退出。

  • --bind-address=ip_address

    在具有多个网络接口的计算机上,使用此选项选择用于连接到MySQL服务器的接口。

  • --character-sets-dir=dir_name

    安装字符集的目录。请参见 第10.14节“字符集配置”

  • --columns=column_list, -c column_list

    该选项以逗号分隔的列名列表作为其值。列名的顺序指示如何将数据文件列与表列匹配。

  • --compress, -C

    压缩客户端和服务器之间发送的所有信息(如果两者均支持压缩)。

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

    编写一个调试日志。一个典型的 debug_options字符串是 默认是。 d:t:o,file_named:t:o

  • --debug-check

    程序退出时打印一些调试信息。

  • --debug-info

    在程序退出时打印调试信息和内存以及CPU使用情况统计信息。

  • --default-character-set=charset_name

    使用charset_name作为默认字符集。请参见第10.14节“字符集配置”

  • --default-auth=plugin

    关于使用客户端身份验证插件的提示。请参见第6.3.10节“可插入认证”

  • --defaults-extra-file=file_name

    在全局选项文件之后读取此选项文件,但在用户选项文件之前(在Unix上)。如果文件不存在或无法访问,则会发生错误。 file_name如果作为相对路径名而非完整路径名给出,则相对于当前目录进行解释。

  • --defaults-file=file_name

    只使用给定的选项文件。如果文件不存在或无法访问,则会发生错误。 file_name如果作为相对路径名而非完整路径名给出,则相对于当前目录进行解释。

    例外:即使 --defaults-file读取客户端程序.mylogin.cnf

  • --defaults-group-suffix=str

    不仅要阅读常用选项组,还要阅读具有常用名称和后缀的组 str例如, mysqlimport通常读取 [client]和 [mysqlimport]组。如果 --defaults-group-suffix=_other 给出选项,mysqlimport也会读取[client_other]和 [mysqlimport_other]组。

  • --delete, -D

    在导入文本文件之前清空表格。

  • --enable-cleartext-plugin

    启用mysql_clear_password明文身份验证插件。(请参见 第6.5.1.4节“客户端明文可插入验证”。)

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

    这些选项的含义与相应的条款相同LOAD DATA INFILE请参见第13.2.7节“LOAD DATA INFILE语法”

  • --force, -f

    忽略错误。例如,如果文本文件的表不存在,请继续处理任何剩余的文件。不 存在时,如果表不存在--force,则 退出mysqlimport

  • --get-server-public-key

    从服务器请求基于RSA密钥对的密码交换所需的公钥。此选项适用于使用caching_sha2_password身份验证插件进行身份验证的客户端 对于那个插件,除非请求,服务器不会发送公钥。对于不使用该插件进行身份验证的帐户,此选项将被忽略。如果不使用基于RSA的密码交换,它也会被忽略,例如当客户端使用安全连接连接到服务器时。

    如果 给出并指定了有效的公钥文件,则优先于 。 --server-public-key-path=file_name--get-server-public-key

    有关该caching_sha2_password插件的信息 ,请参见 第6.5.1.3节“缓存SHA-2可插入验证”

  • --host=host_name, -h host_name

    将数据导入给定主机上的MySQL服务器。默认主机是localhost

  • --ignore, -i

    请参阅该--replace选项的说明 

  • --ignore-lines=N

    忽略N数据文件的第一行。

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

    该选项的含义与相应的子句相同LOAD DATA INFILE例如,要导入具有以回车/换行对结尾的行的Windows文件,请使用 --lines-terminated-by="\r\n"(根据命令解释器的转义约定,您可能必须加倍反斜杠。)请参见 第13.2.7节“LOAD DATA INFILE语法”

  • --local, -L

    默认情况下,服务器主机上的服务器读取文件。使用此选项,mysqlimport会在客户端主机上本地读取输入文件。启用本地数据加载还需要服务器允许它; 请参见 第6.1.6节“LOAD DATA LOCAL的安全问题”

  • --lock-tables, -l

    在处理任何文本文件之前 锁定所有表格进行写入。这可确保所有表在服务器上同步。

  • --login-path=name

    .mylogin.cnf登录路径文件中的指定登录路径读取选项 阿 “ 登录路径 ”是含有指定要连接到哪个MySQL服务器和选项哪个帐户作为认证选项组。要创建或修改登录路径文件,请使用 mysql_config_editor实用程序。请参见 第4.6.7节“ mysql_config_editor - MySQL配置实用程序”

  • --low-priority

    LOW_PRIORITY加载表格时 使用这会影响只使用表级锁只存储引擎(例如MyISAM, MEMORYMERGE)。

  • --no-defaults

    不要阅读任何选项文件。如果由于从选项文件读取未知选项而导致程序启动失败, --no-defaults可用于防止读取它们。

    例外是.mylogin.cnf 在任何情况下读取文件(如果存在)。这允许以比使用命令行更安全的方式来指定密码,即使在--no-defaults使用时 也是如此。.mylogin.cnfmysql_config_editor实用程序创建, 请参见 第4.6.7节“ mysql_config_editor - MySQL配置实用程序”。)

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

    连接到服务器时使用的密码。如果使用short option form(-p), 在选项和密码之间不能有空格。如果您省略命令行上password--passwordor -p选项后面的 值 mysqlimport会提示输入一个值。

    在命令行中指定密码应被视为不安全。请参见 第6.1.2.1节“密码安全的最终用户指南”您可以使用选项文件来避免在命令行上输入密码。

  • --pipe, -W

    在Windows上,使用命名管道连接到服务器。该选项仅适用于服务器支持命名管道连接的情况。

  • --plugin-dir=dir_name

    在其中查找插件的目录。如果该--default-auth选项用于指定身份验证插件,但 mysqlimport未找到该选项,请指定此选项 请参见 第6.3.10节“可插入认证”

  • --port=port_num, -P port_num

    用于连接的TCP / IP端口号。

  • --print-defaults

    打印程序名称以及从选项文件中获取的所有选项。

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

    用于连接到服务器的连接协议。当其他连接参数通常会导致使用的协议不是您想要的协议时,这很有用。有关允许值的详细信息,请参见 第4.2.2节“连接到MySQL服务器”

  • --replace, -r

    --replace和 --ignore选项控制复制唯一键值的现有行输入行处理。如果指定 --replace,则新行将替换具有相同唯一键值的现有行。如果指定--ignore,则跳过在唯一键值上复制现有行的输入行。如果您未指定任一选项,则在找到重复键值时会发生错误,并忽略文本文件的其余部分。

  • --secure-auth

    这个选项在MySQL 8.0.3中被删除。

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

    包含客户端副本的文件的路径名,该副本是服务器为基于RSA密钥对的密码交换所需的。该文件必须采用PEM格式。该选项适用于使用sha256_passwordcaching_sha2_password身份验证插件进行身份验证的客户端 对于未使用其中一个插件进行身份验证的帐户,此选项将被忽略。如果不使用基于RSA的密码交换,它也会被忽略,例如当客户端使用安全连接连接到服务器时。

    如果 给出并指定了有效的公钥文件,则优先于 。 --server-public-key-path=file_name--get-server-public-key

    因为sha256_password,只有在使用OpenSSL构建MySQL时,此选项才适用。

    有关这些sha256_password 和caching_sha2_password插件的信息,请参见 第6.5.1.2节“SHA-256可插入验证”和 第6.5.1.3节“缓存SHA-2可插入验证”

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

    在Windows上,使用共享内存名称,用于使用共享内存连接到本地服务器。默认值是MYSQL共享内存名称区分大小写。

    必须启动服务器, --shared-memory并启用共享内存连接选项。

  • --silent, -s

    静音模式。仅当发生错误时才生成输出。

  • --socket=path, -S path

    连接到localhost要使用的Unix套接字文件,或在Windows上使用命名管道的名称。

  • --ssl*

    开头的选项 --ssl指定是否使用SSL连接到服务器,并指出在哪里可以找到SSL密钥和证书。请参见 第6.4.2节“加密连接的命令选项”

  • --tls-version=protocol_list

    客户端允许的加密连接协议。该值是一个包含一个或多个协议名称的逗号分隔列表。可以为这个选项命名的协议取决于用于编译MySQL的SSL库。有关详细信息,请参见 第6.4.6节“加密连接协议和密码”

  • --user=user_name, -u user_name

    连接到服务器时使用的MySQL用户名。

  • --use-threads=N

    使用N 线程并行加载文件

  • --verbose, -v

    详细模式。打印关于该程序的更多信息。

  • --version, -V

    显示版本信息并退出。

以下是演示mysqlimport使用的示例会话 :学什么技术网翻译提供

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 |
+------+---------------+

你可能感兴趣的:(mysql8.0)