MySQL使用mysqlimport命令导入文本文件
MySQL中,可以使用mysqlimport命令将文本文件导入到MySQL数据库中。基本的语法格式如下:
mysqlimport <dbname> <filename.txt> -u<user> -p<password> [--local] [OPTION]
其中,
- dbname 参数表示数据库的名称。
- filename.txt 参数指定了文本文件名称,可以包含路径。
- user 参数是Mysql账户的名称。
- password 参数是Mysql账户的密码。
- [OPTION]为其他可选参数选项,其常见的取值有:
- --fields-terminated-by=字符串:设置字符串为字段之间的分隔符,可以为单个或多个字符。默认值为制表符“\t”。
- --fields-enclosed-by=字符:设置字符来括住字段的值,只能为单个字符。
- --fields-optionally-enclosed-by=字符:设置字符括住CHAR、VARCHAR和TEXT等字符型字段,只能为单个字符。
- --fields-escaped-by=字符:设置转义字符,默认值为反斜线“\”。
- --lines-terminated-by=字符串:设置每行数据结尾的字符,可以为单个或多个字符,默认值为“\n”。
- --ignore-lines=n:表示可以忽略前n行。
- --local,-L:从本地客户端读入输入文件。
- --columns=column1,column2:表示数据的列名,用逗号分隔。
- --lock-tables,-l:处理文本文件前锁定所有表以便写入。这样可以确保所有表在服务器上保持同步。
- --replace,-r --replace和--ignore选项控制复制唯一键值已有记录的输入记录的处理。如果指定--replace,新行将替换有相同的唯一键值的已有行;如果指定--ignore,复制已有的唯一键值的输入行将被跳过;如果不指定这两个选项,当发现一个复制键值时会出现一个错误,并且忽视文本文件的剩余部分
- --ignore,-i:参考--replace选项的描述。
- --host=host_name,-h host_name:将数据导入给定主机上的MySQL服务器。默认主机是localhost。
- --port=port_num,-P port_num:用于连接的TCP/IP端口号。
- --protocol={TCP|SOCKET|PIPE|MEMORY}:使用的连接协议。
- --compress,-C:压缩在客户端和服务器之间发送的所有信息(如果二者均支持压缩)。
- --delete:表示导入之前清空这个表的全部数据。
- --force,-f:忽视错误。例如,如果某个文本文件的表不存在,继续处理其它文件。不使用--force,如果表不存在,则mysqlimport退出。
- --silent,-s:沉默模式。只有出现错误时才输出信息。
- --verbose,-v:冗长模式。打印出程序操作的详细信息。
一个实际示例:
mysqlimport test t_czb_czbcgblxwjlxx_c.txt -udbadmin -pMypassword@333.cc --fields-terminated-by="|" --local --columns bh,tyshxydmhzzjgdm,dz,gyshcgdljgmc,blxwdjtqx,cfjg,cfyj,cfjlrq,cfjldw,cfjzrq
原文链接:https://blog.csdn.net/wendi_0506/article/details/47175321
浙公网安备 33010602011771号