MySQL之数据导入导出
日常开发中,经常会涉及到对于数据库中数据的导入与导出操作,格式也有很多: TXT,CSV,XLS,SQL等格式,所以,在此总结一下,省的总是百度查询.
一 导出
1) 常用的方式就是使用现成的工具例如: Navicat 或者phpmyadmin 当然这是在Windows下经常使用到的工具,如果是Mac当然也有比较好用的软件进行数据导出
Navicat: 选择要导出的表/库 -> 导出向导->选择导出的格式 即可

phpmyadmin: 选择表/库 -> 导出 -> 选择导出的格式即可

有些情况导入的时候报数据错误,可以使用这种方式进行尝试解决:
xls > 将xls文件另存为CSV格式 -> 打开CSV格式文件,另存为TXT格式,保存的时候使用utf8编码 -> 删除xls和CSV格式的文件 -> 将TXT文件后缀改成CSV格式 -> 使用工具进行导入(Navicat || phpadmin)
2) 命令导出 (如果是在linux中操作的话,使用命令的导出方式是最常用的了)
//导出完整数据:
mysqldump -u用户名 -p密码 库名 [表名] > 保存的文件名称
mysqldump -uroot -proot a user > user.sql(C:\Users\Administrator\Desktop\user.sql) //导出数据表结构:
mysqldump -u用户名 -p密码 -d 库名 表名 > 保存的文件名称
mysqldump -u用户名 -p密码 --no-data --databases d1 > 文件名 //导出数据表中数据:
mysqldump -u用户名 -p密码 -t 库名 表名 > 保存的文件名 //导出所有数据库中(包含系统数据库)的数据库
mysqldump -u用户名 -p密码 --all-databases >保存的文件名 //导出d1,d2两个数据库中的所有数据
mysqldump -u用户名 -p密码 --databases d1 d2 > 保存的文件名 //导出d1中的a1,a2表
mysqldump -u用户名 -p密码 --databases d1 --tables a1 a2 > 保存的文件名 //导出d1库 a1表中id=1的数据
mysqldump -u用户名 -p密码 --databases d1 --tables a1 --where='id=1' > 保存的文件名 //跨服务器导出导入数据
mysqldump --host=h1 -uroot -proot db1 |mysql --host=h2 -uroot -proot db2(可以指定不同数据库) //将h1服务器中的db1数据库的所有数据导入到h2中的db2数据库中,db2的数据库必须存在否则会报错(使用这种方式必须是相同的库名才可以)
mysqldump --host=192.168.80.137 -uroot -proot -C --databases test |mysql --host=192.168.80.133 -uroot -proot test
//-C 进行传输压缩 //--single-transaction 保证备份的一致性(工作原理是设定本次会话的隔离级别为:REPEATABLE READ,以确保本次会话(dump)时,不会看到其他会话已经提交了的数据)
//压缩备份
mysqldump -uroot -proot --databases abc 2>/dev/null |gzip >/abc.sql.gz
//还原
gunzip -c abc.sql.gz |mysql -uroot -proot abc
//常用参数:
//生成新的binlog文件 -F参数 mysqldump -u用户 -p密码 --all-databases -l -F > all_databases.sql
注意点:
--databases: 如果使用这个参数默认会SQL语句中加入创建库,use库语句
使用mysql自带的命令执行操作
/usr/bin/mysql --default-character-set=utf8 --socket=/data/mysql/mysql.sock -u用户名 -p密码 -e " select email,score from gwent.cm_survey " > gwent.xlsm
//在数据库进入之前执行命令 select * from user into outfile 'C:/Users/Administrator/user.xls';
//在数据库中执行命令
二 导入
1) 使用相应的软件导入方法, 操作步骤同上
2) 使用命令行的方式
use database; source E:\xampp\htdocs\SsCpc\djm.sql
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -p abc < abc.sql
MySQL之数据导入导出的更多相关文章
- MySQL多线程数据导入导出工具Mydumper
http://afei2.sinaapp.com/?p=456 今天在线上使用mysqldump将数据表从一个库导入到另外一个库,结果速度特别慢,印象中有个多线程的数据导入导出工具Mydumper,于 ...
- Mysql 的数据导入导出
一. mysqldump工具基本用法,不适用于大数据备份 1. 备份所有数据库: mysqldump -u root -p --all-databases > all_database_sq ...
- mysql的数据导入导出
1.Navicat for Mysql XML导出导入格式支持二进制数据:虽然同步数据人眼看不出区别,但是java尝试读取数据时,报datetime字段取出的值为“0000-00-00 00:00:0 ...
- Dokcer中Mysql的数据导入导出
导出 1.首先进入容器,输入提取数据库文件命令 mysqldump -u root -p rw 数据库名> 输出.sql,提取到当前容器 2.退出容器,进入linux:输入拷贝命令 docker ...
- 如何利用sqoop将hive数据导入导出数据到mysql
运行环境 centos 5.6 hadoop hive sqoop是让hadoop技术支持的clouder公司开发的一个在关系数据库和hdfs,hive之间数据导入导出的一个工具. 上海尚学堂 ...
- 利用sqoop将hive数据导入导出数据到mysql
一.导入导出数据库常用命令语句 1)列出mysql数据库中的所有数据库命令 # sqoop list-databases --connect jdbc:mysql://localhost:3306 ...
- MySQL数据导入导出方法与工具mysqlimport
MySQL数据导入导出方法与工具mysqlimport<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office ...
- linux mysql 数据库操作导入导出 数据表导出导入
linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...
- mysql数据库的导入导出
当我们在操作数据库的时候,难免会遇到数据导入导出的一些操作,今天突然学到了这个知识点,特意来给大家分享. 我用的是data的这条数据 1.使用数据 mysql> use data; Databa ...
随机推荐
- Servlet(五):一个Servlet处理多个请求
一.为什么要使用一个Servlet来处理多个请求? 当浏览器发送了一次请求到服务器时,servlet容器会根据请求的url-pattern找到对应的Servlet类,执行对应的doPost或doGet ...
- February 24th, 2018 Week 8th Saturday
Those are my principles, and if you don't like them... well, I have others. 那是我的原则,要是你不喜欢......那我还有其 ...
- C语言 投票系统:给定候选人,从键盘输入候选人的名字,统计票数,并输出最终获胜者
投票系统:给定候选人名单,从键盘输入候选人的名字,统计票数,并输出最终获胜者.若投票人输入的名字不在其候选名单上,则该票数无效. //凯鲁嘎吉 - 博客园 http://www.cnblogs.com ...
- NGINX Load Balancing - HTTP Load Balancer
This chapter describes how to use NGINX and NGINX Plus as a load balancer. Overview Load balancing a ...
- P2066 机器分配 DP
题目描述 总公司拥有高效设备M台,准备分给下属的N个分公司.各分公司若获得这些设备,可以为国家提供一定的盈利.问:如何分配这M台设备才能使国家得到的盈利最大?求出最大盈利值.其中M≤15,N≤10.分 ...
- css3 object-fit详解
上传头像的时候遇到了头像变形的问题,最后通过object-fit: cover完美解决了.这个CSS属性可以达到最佳最完美的居中自动剪裁图片的功能. object-fit理解 CSS3 backgro ...
- ajax @requestBody
前端: $.ajax({ type: "POST", contentType: "application/json;charset=UTF-8", url: R ...
- https基础
面试题 https://blog.csdn.net/xihuangwutong/article/list/5? TLS 有三大功能:内容加密,身份认证,数据完整性认证 内容加密是依赖于秘钥协商协议数据 ...
- NodeJS的优缺点
我们知道NodeJS是2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装.Node.js对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好,解 ...
- 【vue】vue +element 搭建项目,要求既支持pc端又支持移动端
使用场景:有适配pc端改为适配pc端和移动端,使用2套css 代码实现App.vue created: function () { if(document.documentElement.client ...