mysqldump备份数据
来源:互联网 发布:政府网络舆论互动交流 编辑:程序博客网 时间:2024/05/29 03:52
输出文件
mysqldump输出的数据文件有两种形式:
- 如果带了--tab
选项,mysqldump会为每张表创建两个文件,一个是以tab间隔的文本文件
包含表的内容数据,后缀是.txt
;一个是表的创建语句,表示数据库表的结构,.sql
文件。两个文件名与表名相同。
- 如果不带--tab
选项,那么mysqldump直接输出.sql
文件,里面包含了CREATE 和 INSERT 语句。
不带--tab
的备份
mysqldump -u root -p --all-database > backup.sql;//备份所有的数据库mysqldump -u root -p --database db1 db2 ... > backup.sql;//备份指定的数据库,但是backup.sql没有CREATE语句mysqldump -u root -p db1 db2... > backup.sql;//备份指定的数据库,但是backup.sql有CREATE语句mysqldump -u root -p --add-drop-database db1 db2 > backup.sql;//备份指定的数据库,backup.sql会添加drop databse db1这样的语句;
带--tab
的备份
mysqldump --tab=/tmp/dir;
导出数据到指定目录,每张表都有两个文件,假设表名为myTb,那么,在/tmp/dir/目录下,会有myTb.sql,myTb.txt两个文件。myTb.sql包含表的创建语句(CREATE TABLE myTb…),myTb.txt则是表的数据,数据中,列与列之前默认以tab间隔。
mysqldump还可以指定myTb.txt里数据的展示格式:
--fields-terminated-by=str//列与列之前以字符串str为间隔--fields-enclosed-by=char//用char字符包围列,如(a)(d)--fields-optionally-enclosed-by=char//非数字列,以char字符包围--fields-escaped-by=char//--lines-terminated-by=str//行以字符串str结尾
上面的参数最好用hex进制进行表示,以避免混淆。或者用单引号包围。
从带--tab
的备份中恢复数据
上面说了,--tab
选项会为每张数据表创建两个文件,一个是.sql,一个是.txt.那么下面的命令是把表myTb恢复到数据库:
mysql db1 < myTb.sql;mysqlimport db1 myTb.sql;
第一句是在数据库db1创建表myTb;第二句是把myTb的数据导致数据库中。
当然,如果我们使用mysql登录进入了,也可以用下面mysql的命令,其作用等效于上面:
mysql>USE db1;mysql>LOAD DATA INFILE 'myTb.txt' INTO TABLE myTb;
如果你导出数据是指定了格式,那么恢复数据时,也需要指定格式;
mysqlimport --fileds-terminated-by=, --fileds-enclosed-by='"' db1 myTb.txt;
或者
mysql>USE db1;mysql>LOAD DATA INFILE 'myTb.txt' INTO TABLE myTb->FIELDS TERMINATED BY ','->FIELDS ENCLOSED BY '"';
备份存储过程,函数,触发器
mysqldump --events//事件mysqldump --routines//存储过程与函数 mysqldump --triggers//触发器。默认开启
只备份表结构或者只备份表数据
mysqldump --no-data;//只备份表结构mysqldump --no-create-info//只备份表数据
有什么用呢?当你进行数据库版本升级,或者你要换个机器部署数据库的时候,你可能想要先测试一下,目标数据库是不是支付我这个版本的数据,所以,建议你先从老数据库dump表结构出来,然后导入目标数据库,这样可以快速验证是不是支持数据类型结构什么的;验证成功之后,再把数据导入目标数据库中。
- mysqldump数据备份
- mysqldump 数据备份
- MySQL mysqldump 数据备份
- mysqldump备份数据
- mysqldump数据备份
- 使用mysqldump导入数据和mysqldump增量备份(mysqldump使用方法)
- mysqldump的远程数据备份
- mysqldump,数据备份与恢复
- mysqldump备份数据下篇-mysqldump自动备份数据库
- Mysql数据备份三(脚本备份mysqldump)
- Mysql数据备份与mysqldump增量备份
- mysql mysqldump数据备份和增量备份
- MySQL数据备份利器mysqldump的使用
- 使用mysqldump导出(备份)MySQL数据
- mysqldump 备份数据 using LOCK TABLES
- mysqldump 备份导出数据排除某张表
- MySQL数据备份之mysqldump使用
- mysqldump备份与还原数据操作
- Codeforces 768A Oath of the Night's Watch
- C++学习笔记(二)
- 关于SSD的二三事,NAND闪存的一些常识
- Spring整合Mongodb,Maven的依赖,Spring配置,MongoDB的公共操作类,使用SpringMVC的Controller进行测试并返回结果的案例
- java.lang.ClassNotFoundException: net.sf.navigator.menu.MenuContextListener错误
- mysqldump备份数据
- Android NDK 实例
- 1083. List Grades
- 递归 求阶乘
- PAT甲级练习1052. Linked List Sorting (25)
- 使用 URLDecoder 和 URLEncoder 对中文字符进行编码和解码
- 邹晓艺专栏:Deep Learning系列笔记(一)
- JavaScript的原型和原型链
- React Native通讯机制