Load Data Infile批量导入数据

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: mysql提供了一个  load data infile xxx into table table_name  的方法来帮助批量的导入数据。这个操作是 select * out to file 操作的逆操作。

mysql提供了一个  load data infile xxx into table table_name  的方法来帮助批量的导入数据。这个操作是 select * out to file 操作的逆操作。


大体的使用方式是:

shell>mysql -hxx -uxx -pxx database

mysql>set names utf8;

mysql>load data infile '/path_to_file/xx.csv' into table xx ;


但是在遇到文件不在mysql目录中时,会发生 参考资料1 中的错误,修正的办法是使用 local 参数。具体问题是:


出于安全原因,当读取位于服务器中的文本文件时,文件必须位于数据库目录中,或者是全体可读的。另外,要对服务器文件使用LOAD DATA INFILE,您必须拥有FILE权限。

如果指定了LOCAL,则文件会被客户主机上的客户端读取,并被发送到服务器。文件会被给予一个完整的路径名称,以指定确切的位置。


例如:

load data local infile '/Users/shiqiang/Desktop/school.csv' into table i_school FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r';


参考资料:

1、Mysql Error 13

2、Mysql手册 Load Data Infile

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
关系型数据库 大数据 Python
如何快速创建千万行CSV 数据?
如何快速创建千万行CSV 数据?
|
关系型数据库 MySQL 数据库
MySQL:load data local infile快速插入大批量数据
MySQL:load data local infile快速插入大批量数据
420 0
Jmeter组件-Random CSV Data Set Config参数化CSV随机读取文件
Jmeter组件-Random CSV Data Set Config参数化CSV随机读取文件
Jmeter组件-Random CSV Data Set Config参数化CSV随机读取文件
|
移动开发 关系型数据库 MySQL
MySQL 查询结果保存为CSV文件
MySQL 查询结果保存为CSV文件如何解决
209 0
MySQL 查询结果保存为CSV文件
|
关系型数据库 MySQL 数据库
读取txt写入csv,读取csv写入mysql
用Python实现读取txt写入csv,读取csv写入mysql
251 0
读取txt写入csv,读取csv写入mysql
|
关系型数据库 MySQL 数据库
MySQL 数据备份恢复(一)select into outfile & load data infile
MySQL 数据备份恢复(一)select into outfile & load data infile
281 0
MySQL 数据备份恢复(一)select into outfile & load data infile
|
关系型数据库 MySQL 移动开发