Mysql导出100万条数据,9种导出方法优缺点和速度文件大小测试

Posted 轻烟飘荡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql导出100万条数据,9种导出方法优缺点和速度文件大小测试相关的知识,希望对你有一定的参考价值。

这里写目录标题

这一次我主要就是想针对mysql导出的速度和文件大小进行优缺点测试,这次主要就是用上之前生成的天气表这是表里面的数据


导出就用Navicat中的导出向导

点开就会出现10种的导出方法,由于我不需要最后一种方法,所以就不进行测试,每种方法都对应着不同的作用

1.DBase文件

导出100万条,由于是数据库类型文件所以dbf导出后大小非常大,100万条数据有1.741GB,这种格式文件能够最大保证数据库内的数据完整性

2.文本文件

导出txt文件,100万条数据需要9.57秒,文件大小77MB勉强可以接受,也可以直接打开文件对里面的数据进行读取,win10自带软件打开文件超过1分钟,用notepad++打开txt文件就几秒

3. CSV文件

导出100万条数据需要9.22秒,文件大小在77.27MB,用notepad++打开几秒就可以显示全部内容


4.html文件

导出100万条数据需要7秒,文件大小在132MB,打开查看文件也是属于秒开


浏览器可以很直观看到排列好的数据,体验还是不错

5.Excel数据表低版本

用低版本Excel导出数据100万条需要用15秒,文件是131MB,而且单表最大只能支持65536行数据,如果超出会把你的数据进行拆分,打开读取数据时间也较久


6.Excel文件2007年以后版本

导出100万条数据需要42秒,文件大小是37MB,打开文件后需要读取数据在10秒,单表支持超过100万条数据不用担心被拆分的情况


7.SQL脚本文件

导出整个表的结构和100万条数据,需要18.5秒,文件大小在219MB

8.XML文件

导出需要8秒,文件大小在274MB,导出后可读性和改写性较差


9.JSON文件

导出100万条数据,需要9秒,文件在251MB



总结

可以根据自身的需求选择相应的mysql数据库导出方式,根据不同项目去选择相应的导出方式即可。

导出方式文件大小可改写性数据安全性导出速度
1.DBase文件1.741GB41秒
2.文本文件77MB可以修改和查询数据9.57秒
3.CSV文件77.27MB可以修改和查询数据9.22秒
4.HTML文件132MB可以查询数据7.04秒
5.Excel数据表低版本(不推荐)131MB可以增删改查数据和做可视化15秒
6.Excel文件2007年以后版本37MB可以增删改查数据和做可视化42秒
7.SQL脚本文件219MB18.5秒
8.XML文件274MB可读性和改写性较差8秒
9.JSON文件251MB可读性和改写性较差9秒

Linux 环境下 MySQ导入和导出MySQL的sql文件

将服务器上的文件导入或导出还需要使用工具传输到本机中,推荐使用winscp,与xshell搭配使用

导入数据库 两种方法

  

1、首先建空数据库
mysql>create database abc;
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -p abc < abc.sql

 

 

导出数据

1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p abc > abc.sql
敲回车后会提示输入密码
2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p -d abc > abc.sql

注:/usr/local/mysql/bin/  --->  mysql的data目录

 

以上是关于Mysql导出100万条数据,9种导出方法优缺点和速度文件大小测试的主要内容,如果未能解决你的问题,请参考以下文章

将 mysql 表导出到 ms Access 表中的最快/安全方式

200万数据oracle导入表要多久

用phpExcel 导出数据超过1万条浏览器假死。求解决方法,或者其他的导出excel类。

mysql导出数据库几种方法

oracle导出1000万条数据应该如何实现

求java导出大量数据到excel解决方法