MySQL大数据量之导入导出命令详解

面对大数据量,大文件的sql操作,我们需要借助mysql强大的命令操作:

1. 数据库导入命令

 代码如下 复制代码
mysql -h localhost -u root -p  
use dbname
source backup.sql

说明:需要使用命令连接上数据库并选择相应数据库才能使用。

2. 数据库备份命令

MySQL的导出命令mysqldump,基本用法是:

 代码如下 复制代码
mysqldump [OPTIONS] database [tables]

说明:不能先连接数据库,是直接连接数据库导出

简单实例:

 

 代码如下 复制代码
mysqldump -h localhost -u root -p dbname > backup.sql

MySQL的mysqldump命令,基本用法是:

mysqldump [OPTIONS] database [tables]说明:

1. 通过执行mysqldump –help,你能得到你mysqldump的版本支持的使用帮助信息。
2.如果端口为默认的3306时,可省略 -P {端口号} 这一项。

3.命令行格式中 { } 中的内容都是变量
主机名 : {hostname}
端   口:{port}    (一般默认3306,可缺省)
用户名:{user} {username} (如root)
密   码:{password}
数据库名 :{database}
表   名:{table}  {table1}  {table2}
文件名:{backup.sql}

.常用操作:

备份MySQL整个数据库:

 代码如下 复制代码
mysqldump -h主机名 -P端口 -u用户名 -p密码 (–database) 数据库名 > 文件名.sql
mysqldump -h{hostname} -P{port} -u{username} -p{password} {database} > {backup.sql}

说明:参数及值可以分开如-P3306可以写成-P 3306,密码可以先不填写,以确保安全。

MySQL数据库压缩备份:

 代码如下 复制代码
mysqldump -h{hostname} -u{username} -p{password} {database} | gzip > {backup.sql.gz}

备份MySQL数据库某个(些)表:

mysqldump -h主机名  -P端口 -u用户名 -p密码 (–tables | –quick) 数据库名 表名1 (表名2 …) > 文件名.sql (括号中的可缺省)。
#实例:

 代码如下 复制代码
mysqldump -u root -p myadmindb admin_group admin_group_right admin_logs admin_user_right admin_users > tmp.sql

同时备份多个MySQL数据库:

 代码如下 复制代码
mysqldump -h{hostname} -P{port} -u{username} -p{password} –databases {database1} {database2} {database3} > multibackfile.sql

还原MySQL数据库的命令:

 代码如下 复制代码
mysql -h{hostname} -u{username} -p{password} {database} < {backup.sql}

还原压缩的MySQL数据库:

 代码如下 复制代码
gunzip < {backup.sql.gz} | mysql –u{username} –p{password} {database}

将数据库转移到新服务器:

 代码如下 复制代码

mysqldump –u{username} –p{password} {database} | mysql –host={hostname} –C {database}

时间: 2024-08-02 17:59:41

MySQL大数据量之导入导出命令详解的相关文章

MYSQL导入导出命令详解_Mysql

/usr/local/mysql/bin/mysql -uroot -proot test -e "LOAD DATA INFILE '/usr/1.txt' replace INTO TABLE test FIELDS TERMINATED BY '\t' (name,address)" info: 1.txt zhangsan wuhan lishi wuhan 把1.txt文件插入到mysql数据库中 网上看了一些总结出来的资料,不知道对大家有没有用的,有用的话也就不枉费我一按按

MySQL 大数据量快速插入方法和语句优化

MySQL大数据量快速插入方法和语句优化是本文我们主要要介绍的内容,接下来我们就来一一介绍,希望能够让您有所收获! 一.INSERT语句的速度 插入一个记录需要的时间由下列因素组成,其中的数字表示大约比例: 连接:(3) 发送查询给服务器:(2) 分析查询:(2) 插入记录:(1x记录大小) 插入索引:(1x索引) 关闭:(1) 这不考虑打开表的初始开销,每个并发运行的查询打开. 表的大小以logN (B树)的速度减慢索引的插入. 加快插入的一些方法 如果同时从同一个客户端插入很多行,使用含多个

Mysql大数据量存储及访问的设计讨论

一.引言 随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题.对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载.对于系统的稳定性和扩展性造成了极大的问题.通过数据切分来提高网站性能,横向扩展数据层已经成为架构研发人员首选的方式.水平切分数据库,可以降低单台机器的负载,同时最大限度的降低了了宕机造成的损失.通过负载均衡策略,有效的降低了单台机器的访问负载,降低了宕机的可能性:通过集群方案,解决了数据库宕机带来的单点数据库不能访问的问题:通过读写分离策略更

poi处理excel大数据量的导入会报内存溢出

问题描述 poi处理excel大数据量的导入会报内存溢出 XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream(fileName())); 就是单独执行这行代码都不行,报内存溢出,我把虚拟机都设置成最大了也溢出 差不多10万行吧 解决方案 poi大数据量excel导入 解决方案二: 可以参考这:poi的eventmodel写的大数据量的excel的读取程序.http://gaosheng08.iteye.com/blog/624

求mysql 大数据量问题解决方法?

问题描述 求mysql 大数据量问题解决方法? 一个mysql的数据表(大概有50000+)的数据,其中有一个字段的类型是blob的,存着相当大的二进制数据(大概有50k以上),有时候检索某个字段或者只是查询某个总共有几条数据就要相当长的时间,求有什么办法解决吗? 解决方案 把你经常需要查询的字段建立索引. 解决方案二: blob放在服务器上,然后用mysql记录它存放在服务器的地址.每次查就是根据地址来服务器取数据 解决方案三: MySQL数据库如何解决大数据量存储问题关于mysql大数据量分

[Hadoop大数据]——Hive连接JOIN用例详解

SQL里面通常都会用Join来连接两个表,做复杂的关联查询.比如用户表和订单表,能通过join得到某个用户购买的产品:或者某个产品被购买的人群.... Hive也支持这样的操作,而且由于Hive底层运行在hadoop上,因此有很多地方可以进行优化.比如小表到大表的连接操作.小表进行缓存.大表进行避免缓存等等... 下面就来看看hive里面的连接操作吧!其实跟SQL还是差不多的... 数据准备:创建数据-->创建表-->导入数据 首先创建两个原始数据的文件,这两个文件分别有三列,第一列是id.第

MySQL大数据量导入导出方法比较

硬件: Intel(R) Xeon(R) CPU 5130 @ 2.00GHz * 2, 4G RAM, 564G SAS 软件: Red Hat Enterprise Linux AS release 4 (Nahant Update 4) 2.6.9 42.ELsmp (32-bit), MySQL 5.0.27-standard-log 总记录数: 1016126, 每行平均大小 46822 1. 导出测试 1.1 导出成文本 方法: SELECT * INTO OUTFILE '/bac

Mysql大数据量的导出导入方法比较

硬件: Intel(R) Xeon(R) CPU 5130 @ 2.00GHz * 2, 4G RAM, 564G SAS 软件: Red Hat Enterprise Linux AS release 4 (Nahant Update 4) 2.6.9 42.ELsmp (32-bit), MySQL 5.0.27-standard-log 总记录数: 1016126, 每行平均大小 46822 1. 导出测试1.1 导出成文本 方法: SELECT * INTO OUTFILE '/back

MySQL大数据量时提高分页效率

我的这段代码是大数据量时提高分页的效率的测试代码 --提高分页效率:实现分页时只读取显示数据,需要先在数据库创建数据库"TestForPaging" use TestForPaging go --创建表SomeData create table SomeData ( id int primary key, name varchar(30) null, description text ) go --插入数据 insert into SomeData values(1,'num1','第