mysql导入数据load data infile

注意:

1)“load data infile” 和“into outfile” 默认只能和服务器本地的磁盘交互,需要先把txt文件上传到服务器上,然后执行load data infile命令。如果需要远程异地操作,需要特殊配置,本篇不做介绍。

2)需要确认文件的换行是什么,目前是'\n'。但也有可能会是'\r\n'

3)注意数据库服务器,MySQL对文件目录的限制:show variables like "secure_file_priv"

secure_file_priv值 含义
NULL 不允许导入导出(infile、outfile)
""(空字符串or空白) 不限制目录,可以再服务器的任何目录
path(具体的一个服务器的目录) 只能在改目录进行导入导出

另外注意,该值只能通过mysql的配置文件修改重启服务生效,无法通过set global之类的命令生效。

windows

--fields escaped by '' 不区分转义字符

-- lines terminated by '\n'

load data infile 'D:\filename.txt' into table db_name.table_name fields escaped by '' lines terminated by '\n';

linux

load data infile '/data/filename.txt' into table db_name.table_name fields escaped by '' lines terminated by '\n';

posted @ 2021-12-15 17:32  jiafeng  阅读(465)  评论(0编辑  收藏  举报