MySQL Inport--导入数据
LOAD DATA INFILE导入数据
语法:
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE ''
[REPLACE | IGNORE]
INTO TABLE tbl_name
[FIELDS
[TERMINATED BY 'string']
[[OPTIONALLY] ENCLOSED BY 'char']
[ESCAPED BY 'char' ]
]
[LINES
[STARTING BY 'string']
[TERMINATED BY 'string']
]
[IGNORE number LINES]
[(col_name_or_user_var,...)]
[SET col_name = expr,...)]
LOAD DATA 命令中的默认值:
FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\'
LINES TERMINATED BY '\n' STARTING BY ''
文件参数:
LOCAL参数:
1、如果指定了LOCAL,则文件会被客户主机上的客户端读取,并被发送到服务器。文件会被给予一个完整的路径名称,以指定确切的位置。如果给定的是一个相对的路径名称,则此名称会被理解为相对于启动客户端时所在的目录。
2、如果LOCAL没有被指定,则文件必须位于服务器主机上,并且被服务器直接读取。 当在服务器主机上为文件定位时,服务器使用以下规则:
1、如果参数为绝对路径,则MySQL使用该绝对路径
2、如果参数为带目录的相对路径,则MySQL会相对于数据目录进行文件查找
3、如果参数为不带目录的文件名,则MySQL会在数据目录下进行文件查找
LOAD DATA LOCAL命令运行将本例文件加载到数据库中,存在安全问题,可以使用--local-infile=0来从服务器端禁用LOAD DATA LOCAL命令。
LOAD DATA LOCAL命令只能针对单个文件进行数据导入。
MYSQLIMPORT使用LOAD DATA INFILE的命令接口,可以使用--user-thread选项来设置导入数据的并发线程,其本质是同时执行多个LOAD DATA INFILE的命令。
LOAD DATA INFILE模板
如果文件使用MYSQLDUMP -tab 或SELECT INTO OUTFILE导出,那么可以使用LOAD DATA INFILE来导入。
常用导入模板:
LOAD DATA INFILE '/backup/TB001.txt' INTO TABLE TB001(id,c1)
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 0 LINES
执行SQL命令文件
对于包含SQL命令的文件,可以使用mysql命令执行,也可以在登录MySQL后使用source命令执行,建议使用mysql方式:
1、可以使用--force参数来控制是否出错后执行
2、可以使用--verbose参数输出执行结果,并将正常结果和异常结果分开存放,方便查看
如果使用source命令,中间命令执行失败后仍会继续执行后续命令,并很可能被后续执行结果“覆盖”导致错误被忽略
如果希望使用mysql命令来执行命令文件且想使用事务,可以在命令开始和命令结束添加"BEGIN"+“COMMIT”,然后将--force参数设置为False,当执行失败后会自动回滚并退出。
如果希望使用source命令来执行命令文件且想使用事务,不能在文件中使用"BEGIN"+“COMMIT”,需要在SOURCE命令外部使用"BEGIN"+“COMMIT”,在判断SOURCE执行结果后确定是COMMIT还是ROLLBACK。
MySQL Inport--导入数据的更多相关文章
- mysql加速导入数据的简单设置
mysql加速导入数据的简单设置 # 修改前查询参数值 show variables like 'foreign_key_checks'; show variables like 'unique_ch ...
- 用python批量向数据库(MySQL)中导入数据
用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同 Current database: pyt ...
- 搜索引擎Solr系列(二): Solr6.2.1 从MySql中导入数据
一:建立MySql测试表,如下图: 二:solr导入配置: 1.新建demo core文件夹,并修改managed-schema里面的配置文件建立索引字段: 2.把mysql-connector-j ...
- MYSQL数据库导入数据时出现乱码的解决办法
我的一个网站在负载搞不定的情况下最终选择了数据库和程序分离的方式解决的高负载,但是再导入数据的时候出现了大量乱码,最终通过方法二解决掉导入数据的问题,后面再设计网站布局的时候数据库跟网站程序分离是个很 ...
- Mysql mysqlimport 导入数据
在mysql 数据库中可以用 mysqlimport 工具来实现数据的导入!mysqlimport 导入数据简单,但是这个也要满足一定的条件 1.既然是把数据导入到数据库,你总有一个数据库用户账号吧 ...
- mysql导出导入数据
使用sql语句导出数据: 导出时如果不写绝对路径,会提示The MySQL server is running with the --secure-file-priv option so it can ...
- mysql 导出导入数据 -csv
MySql数据库导出csv文件命令: mysql> select first_name,last_name,email from account into outfile 'e://output ...
- mysql本地导入数据
1.获得一个超级权限的用户 grant all on *.* to root@'127.0.0.1' identified by 'root';# 因为我想在本地导入数据,而数据就在本地.# 有时候, ...
- 关于mysql 表导入数据
一.实验准备: 1.实验设备:Dell laptop 7559; 2.实验环境:windows 10操作系统; 3.数据库版本:mysql 8.0; 二.实验目的: 1.将一个宠物表pet.txt文件 ...
- MySQL 加快导入数据
1.临时关闭binlog,避免写入日志 set sql_log_bin = off: mysql> show VARIABLES like '%log_bin%'; +------------- ...
随机推荐
- 2.7 C++构造函数
参考:http://www.weixueyuan.net/view/6339.html 总结: 如果在类中声明了任何一个构造函数,则系统不会自动生成默认构造函数.构造函数同样能够使用类中的成员变量. ...
- tomcat启动失败,提示信息:Unable to ping server at localhost:1099
jdk1.7+maven9.0.0开启服务器时,提示Unable to ping server at localhost:1099 然后换成tomcat8.5.1就成功开启服务器
- Android SurfaceView内容获取
Android SurfaceView内容获取 这几天在做一个Android的小项目,项目中需要使用到SurfaceView来显示相机捕获的内容,同时还有一个SurfaceView用于绘制一些辅助线, ...
- python-局部变量和全局变量
name = "feifei" def change_name(name): print("before change name:%s" % name) nam ...
- mysql解决数据库高并发
分表分库 数据库索引 redis缓存数据库 读写分离 负载均衡: 将大量的并发请求分担到多个处理节点,由于单个处理节点的故障不影响服务,负载均衡集群同事也实现了高可用性.
- iOS原生和React-Native之间的交互2
今天看下iOS原生->RN: 这里有个问题: * 我这里只能通过rn->ios->rn来是实现* 如果想直接ios-rn 那个iOS中的CalendarManager的self.br ...
- 基于区域的OSPF简单认证
实验要求:掌握OSPF区域简单认证配置 拓扑如下: 配置如下: R1enable configure terminal interface s0/0/0ip address 192.168.1.1 2 ...
- MyBatis insert操作返回主键
在使用MyBatis做持久层时,insert语句默认是不返回记录的主键值,而是返回插入的记录条数: Dao.java @Override public int insert(T record) { f ...
- MongDB篇,第四章:数据库知识4
MongDB 数据库知识4 GridFS 大文件存储 文件的数据库存储 1,在数据库中以 字符串的方式 存储文件在本地的路径: 优点: 节省数据库空间 缺点: 当数据库或者文件位置发生变化时则无 ...
- Python之路,第十三篇:Python入门与基础13
python3 模块 模块 Module 概念: 模块是一个保护有一系统变量.函数.类等组成的程序组: 模块是一个文件,模块文件名通常以.py 结尾: 作用:让一些相关的变量,函数, 类等有逻辑的 ...