mysql 千万级数据的导入导出
最近应公司要求,在做数据库的导入导出。经查询每天的数据量在350W条左右。经过大量测试,感觉以下方法比较好
数据导出:SELECT INTO…OUTFILE
基本语法:
SELECT
[INTO OUTFILE 'file_name'
[CHARACTER SET charset_name]
export_options
| INTO DUMPFILE 'file_name'
| INTO var_name [, var_name]]
该语句分为两个部分。前半部分是一个普通的SELECT语句,通过这个SELECT语句来查询所需要的数据;后半部分是导出数据的。其中,“目标文件”参数指出将查询的记录导出到哪个文件中;“OPTION”参数为可选参数选项,其可能的取值有:
- FIELDS TERMINATED BY '字符串':设置字符串为字段之间的分隔符,可以为单个或多个字符。默认值是“\t”。
- FIELDS ENCLOSED BY '字符':设置字符来括住字段的值,只能为单个字符。默认情况下不使用任何符号。
- FIELDS OPTIONALLY ENCLOSED BY '字符':设置字符来括住CHAR、VARCHAR和TEXT等字符型字段。默认情况下不使用任何符号。
- FIELDS ESCAPED BY '字符':设置转义字符,只能为单个字符。默认值为“\”。
- LINES STARTING BY '字符串':设置每行数据开头的字符,可以为单个或多个字符。默认情况下不使用任何字符。
- LINES TERMINATED BY '字符串':设置每行数据结尾的字符,可以为单个或多个字符。默认值是“\n”。FIELDS和LINES两个子句都是自选的,但是如果两个子句都被指定了,FIELDS必须位于LINES的前面。
例子:
SELECT * INTO OUTFILE 'E:/data.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM dl.datas
导出结果:
数据导入:load data infile
into table tbl_name
[fields
[terminated by't']
[OPTIONALLY] enclosed by '']
[escaped by'\' ]]
[lines terminated by'n']
[ignore number lines]
[(col_name, )]
load data infile语句从一个文本文件中以很高的速度读入一个表中。使用这个命令之前,mysqld进程(服务)必须已经在运行。为了安全原因,当读取位于服务器上的文本文件时,文件必须处于数据库目录或可被所有人读取。另外,为了对服务器上文件使用load data infile,在服务器主机上你必须有file的权限。
1 如果你指定关键词low_priority,那么MySQL将会等到没有其他人读这个表的时候,才把插入数据。可以使用如下的命令:
load data low_priority infile "/home/mark/data sql" into table Orders;
2 如果指定local关键词,则表明从客户主机读文件。如果local没指定,文件必须位于服务器上。
3 replace和ignore关键词控制对现有的唯一键记录的重复的处理。如果你指定replace,新行将代替有相同的唯一键值的现有行。如果你指定ignore,跳过有唯一键的现有行的重复行的输入。如果你不指定任何一个选项,当找到重复键时,出现一个错误,并且文 本文件的余下部分被忽略。例如:load data low_priority infile "/home/mark/data sql" replace into table Orders;
4 分隔符
terminated by分隔符:意思是以什么字符作为分隔符
enclosed by字段括起字符
escaped by转义字符
enclosed by描述的是字段的括起字符。
escaped by描述的转义字符。默认的是反斜杠(backslash:\ )
例子:
load data low_priority local infile "E:/data.txt" replace into table datas fields terminated by ',' enclosed by '"' escaped by '"' lines terminated by '\n';
mysql 千万级数据的导入导出相关推荐
- mysql千万级数据查询select、插入insert慢 可能原因总结
mysql千万级数据查询select.插入insert慢 可能原因总结 表连表查询 并 insert ,insert into -select -from- insert into T1(XX,XX) ...
- MYSQL常用命令大全(导入导出、创建、单多表查询(超详细)、授权)
MYSQL常用命令 一.导入导出 1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认 ...
- Linux下导出MySQL为SQL文件_MySQL导入导出.sql文件步骤
MySQL导入导出.sql文件步骤如下: 一.MySQL的命令行模式的设置: 桌面->我的电脑->属性->环境变量->新建-> PATH=":path\mysq ...
- php mysql 命令行模式_MySQL_MYSQL导入导出sql文件简析,一.MYSQL的命令行模式的设置- phpStudy...
MYSQL导入导出sql文件简析 一.MYSQL的命令行模式的设置 桌面->我的电脑->属性->环境变量->新建-> PATH=":path\mysql\bin ...
- mysql enclosed by_MySql csv文件导入导出
一.导出到csv(本地导出) 通过mysql客户端shell连接到服务器,选择使用的数据库,输入sql代码: select * from test_info into outfile '/tmp/te ...
- hive向mysql导数据_Mysql Hive 导入导出数据
---王燕行转列sql select split(concat_ws(',',collect_set(cast(smzq as string))),',')[1] ,split(concat_ws(' ...
- MySQL千万级数据进行插入,基础数据3千万,插入1千万数据时间约为4.7分钟,10个线程同时插入
测试MySQL千万条数据插入速度 使用多线程,每条线程处理数据100万条,每次插入携带数据7万条进行提交 数据库基数为0,插入1000万条数据,时间为311957毫秒,也就是311.957秒,约为5. ...
- mysql 存储引擎和数据导入导出
存储引擎 mysql服务软件自带的功能程序,处理表的处理器 每种不同的存储引擎有不同的功能和数据存储方式 show engine 查看引擎 修改引擎 停止服务 修改配置文件 [mysqld] defa ...
- mysql数据与Hadoop之间导入导出之Sqoop实例
前面介绍了sqoop1.4.6的 如何将mysql数据导入Hadoop之Sqoop安装,下面就介绍两者间的数据互通的简单使用命令. 显示mysql数据库的信息,一般sqoop安装测试用 sqoop l ...
最新文章
- 阿里老员工吐槽:新员工水平差!不服管理!还不加班!我要汇报经理让对方无法转正!...
- 【Lua】撸啊!第一弹:Lua开发环境搭建(Mac OS X)
- python个人博客源码_我的使用Sanic的个人博客源码开源了!
- 64 os 驱动签名
- Linux opencv安装与编译
- 共阳极数码时钟c语言程序,基于51单片机C语言数字钟程序.doc
- linux wifi关闭5g,TP-Link路由器如何关闭5G无线Wi-Fi信号?
- php dede 发布时间_dede 采集到数据后,发布日期变为本地日期解决方法
- asp.net Session丢失问题
- kl散度度量分布_概率图简要模型笔记(二)马尔可夫随机场与KL散度、最大熵、指数族分布、高斯分布、极大似然分布...
- 中职计算机专业选修课程,《办好中职学校计算机专业的几点思考.doc
- kali安装步骤失败 选择并安装软件_7Zip v19.00 软件安装步骤
- 当identity_insert 设置为off时不能为表_最近新get日志测试方法,再也不用为故障响应慢发愁!...
- 这几天可能是长时间关注电脑,眼睛没有得到休息,所以就早上起来眼睛有点通...
- 负载均衡与服务器架构
- 如何用计算机测量图片景深,景深(摄影测量与遥感学术语 .)_百度百科
- 计算机睡眠和休眠的区别win10,win10睡眠和休眠有何不同_win10休眠和睡眠的区别...
- 电容击穿之后是开路还是短路?
- 错误1406.无法将数值写入键/Software/Classess/.htm/OpenWithList/devenv.exer的解决方案
- XCTF-攻防世界CTF平台-Web类——19、mfw(.Git源代码泄露、php的assert断言)
热门文章
- eTom学习浅显理解
- 一首诗,致亲爱的csdn
- 富文本框显示OLE对象
- java虚拟机在哪配置参数,Java虚拟机(JVM)参数配置说明
- java.lang.IllegalArgumentException: SimpleMessageConverter only supports String, byte[] and Serializ
- CCProxy代理上网设置方法
- JAVA_SE_Day02
- EC-R3566PC四核64位嵌入式主机
- 我的专业我做主计算机演讲稿,我的管理我做主演讲稿
- 备案域名绑定服务器后 提示需要备案_最近有人问我:买了个域名,怎么用不了?域名究竟该怎么用?...