mysqldump进行数据备份详解


Posted in MySQL onJuly 15, 2022

前言:

mysqlbinlog工具(mysql原生自带的工具)介意快速解析大量的binlog日志文件,并使用二进制日志进行数据恢复的应用实践,这篇博客我们讲一下数据备份先关的命令,因为我们做后台开发一般工作在shell下,而且部署在后台服务器或者是云端的mysql,大部分做了一些限制,我们可能在本地无法直连到后台服务的数据库3306端口上,一般都会有防火墙之类的网络的中间键,没有条件用GUI(图形界面工具)鼠标操作做数据备份之类的,只能通过命令,而且命令也是最快速的,所以这篇博客讲一下常用的数据备份,我们一般通过mysqldump进行。

mysqldump进行数据备份详解

在linux shell下执行以下命令,即可把mytest库的user表的数据导出到.sql文件中(导出的不仅是数据,SQL语句也导出了)

mysqldump进行数据备份详解

vim user.sql查看user.sql文件内容如下:

mysqldump进行数据备份详解

mysqldump进行数据备份详解

现在mytest库里面,我们把表删了,或者是我们向进行数据迁移,在另一个库上重建这个表。我们有了这个sql脚本在root根目录下放着,权限不够,要在普通用户下执行,所以把user.sql移到普通用户下(或者我们可以一开始就在普通用户下执行mysqldump -u root -p mytest user > ~/user.sql把mytest库的user表的数据导出到.sql文件中,就不用执行接下来的步骤,直接执行source /home/admin/user.sql,就可以恢复出user表和数据)

mysqldump进行数据备份详解

mysqldump进行数据备份详解

mysqldump进行数据备份详解

现在user.sql是root的文件,我们变更一下属主,使得普通用户也可以操作

mysqldump进行数据备份详解

然后我们source,相当于把.sql脚本重新执行一遍

mysqldump进行数据备份详解

mysqldump进行数据备份详解

user表和数据全部恢复出来了,有了.sql的脚本,可以在任意的mysql库上去重建库表及数据

我们还可以直接导出纯表数据:

mysqldump进行数据备份详解

user.txt内容如下:

mysqldump进行数据备份详解

这样就把user表里面的数据全部导出来了,我们再去用python或者go去写一些脚本进行数据分析的时候,可以通过-t来作为来作为分隔符把每一个字段的数据都获取出来做额外的数据分析,比如分析用户的行为,建立用户的画像等等。

mysqldump数据备份命令总结

导出建库建表的SQL:

//导出所有库
mysqldump -u 用户名 -p --all-databases > ~/xxx.sql
//一次可以导出多个库
mysqldump -u 用户名 -p --databases db1[db2] > ~/xxx.sql
//导出库或者库里面的某张表
mysqldump -u 用户名 -p dbname [tablename]> ~/xxx.sql

导出纯数据:

mysql -u 用户名 -p -D school -e 'select * from user where age>10' > ~/user.txt

通过备份的.sql,导入数据,建库建表

登录mysql,在mysql的shell上执行下面语句

source ~/school.sql

或者直接在linux的shell下执行

cat ~/data.sql|mysql -u root -p

这样就可以把我们之前备份的数据到mysql的库表中

到此这篇关于mysqldump进行数据备份详解的文章就介绍到这了,更多相关mysqldump数据备份内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

MySQL 相关文章推荐
Mysql - 常用函数 每天积极向上
Apr 05 MySQL
MySQL大小写敏感的注意事项
May 24 MySQL
Mysql中 unique列插入重复值该怎么解决呢
May 26 MySQL
Mysql数据库值的添加、修改、删除及清空操作实例
Jun 20 MySQL
解决mysql:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO/YES)
Jun 26 MySQL
MySQL数据库必备之条件查询语句
Oct 15 MySQL
mysql中int(3)和int(10)的数值范围是否相同
Oct 16 MySQL
MySQL七种JOIN类型小结
Oct 24 MySQL
分析MySQL优化 index merge 后引起的死锁
Apr 19 MySQL
MySQL解决Navicat设置默认字符串时的报错问题
Jun 16 MySQL
MySQL控制流函数(-if ,elseif,else,case...when)
Jul 07 MySQL
MySql按时,天,周,月进行数据统计
Aug 14 MySQL
MySQL的表级锁,行级锁,排它锁和共享锁
Jul 15 #MySQL
MySQL事务的隔离级别详情
Jul 15 #MySQL
MySQL事务的ACID特性以及并发问题方案
Jul 15 #MySQL
MySQL的意向共享锁、意向排它锁和死锁
Jul 15 #MySQL
Mysql数据库group by原理详解
delete in子查询不走索引问题分析
Jul 07 #MySQL
MySQL提升大量数据查询效率的优化神器
You might like
将二维数组转为一维数组的2种方法
2014/05/26 PHP
ThinkPHP 表单自动验证运用示例
2014/10/13 PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
2014/10/21 PHP
PHP实现扎金花游戏之大小比赛的方法
2015/03/10 PHP
PHP多维数组转一维数组的简单实现方法
2015/12/23 PHP
跟随鼠标旋转的文字
2006/11/30 Javascript
JavaScript DOM 学习第七章 表单的扩展
2010/02/19 Javascript
javascript 数据类型转换(parseInt,parseFloat)
2010/07/20 Javascript
深入领悟JavaScript中的面向对象
2013/11/18 Javascript
将json对象转换为字符串的方法
2014/02/20 Javascript
javascript如何判断输入的url是否正确
2014/04/11 Javascript
javascript使用正则表达式检测IP地址
2014/12/03 Javascript
最全面的百度地图JavaScript离线版开发
2016/09/10 Javascript
浅谈js数组和splice的用法
2016/12/04 Javascript
React创建组件的三种方式及其区别
2017/01/12 Javascript
jQuery中Chosen三级联动功能实例代码
2017/03/07 Javascript
js清除浏览器缓存的几种方法
2017/03/15 Javascript
angular.extend方法的具体使用
2017/09/14 Javascript
React styled-components设置组件属性的方法
2018/08/07 Javascript
[50:50]完美世界DOTA2联赛PWL S3 Galaxy Racer vs Phoenix 第一场 12.10
2020/12/13 DOTA
Python探索之创建二叉树
2017/10/25 Python
浅析Python3爬虫登录模拟
2018/02/07 Python
Python遍历numpy数组的实例
2018/04/04 Python
浅谈python中np.array的shape( ,)与( ,1)的区别
2018/06/04 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
Django Rest framework频率原理与限制
2019/07/26 Python
JS原生实现轮播图的几种方法
2021/03/23 Javascript
更夫岗位责任制
2014/02/11 职场文书
硕士研究生求职自荐信范文
2014/03/11 职场文书
4s店活动策划方案
2014/08/25 职场文书
个人授权委托书样本
2014/09/13 职场文书
2014年房产销售工作总结
2014/12/08 职场文书
工会工作个人总结
2015/03/03 职场文书
2016年入党心得体会范文
2016/01/23 职场文书
MySQL限制查询和数据排序介绍
2022/03/25 MySQL
Android 中的类文件和类加载器详情
2022/06/05 Java/Android