mysqldump进行数据备份详解
前言:
用mysqlbinlog工具(mysql原生自带的工具)介意快速解析大量的binlog日志文件,并使用二进制日志进行数据恢复的应用实践,这篇博客我们讲一下数据备份先关的命令,因为我们做后台开发一般工作在shell下,而且部署在后台服务器或者是云端的mysql,大部分做了一些限制,我们可能在本地无法直连到后台服务的数据库3306端口上,一般都会有防火墙之类的网络的中间键,没有条件用GUI(图形界面工具)鼠标操作做数据备份之类的,只能通过命令,而且命令也是最快速的,所以这篇博客讲一下常用的数据备份,我们一般通过mysqldump进行。
在linux shell下执行以下命令,即可把mytest库的user表的数据导出到.sql文件中(导出的不仅是数据,SQL语句也导出了)
vim user.sql查看user.sql文件内容如下:
现在mytest库里面,我们把表删了,或者是我们向进行数据迁移,在另一个库上重建这个表。我们有了这个sql脚本在root根目录下放着,权限不够,要在普通用户下执行,所以把user.sql移到普通用户下(或者我们可以一开始就在普通用户下执行mysqldump -u root -p mytest user > ~/user.sql
把mytest库的user表的数据导出到.sql文件中,就不用执行接下来的步骤,直接执行source /home/admin/user.sql
,就可以恢复出user表和数据)
现在user.sql是root的文件,我们变更一下属主,使得普通用户也可以操作
然后我们source,相当于把.sql
脚本重新执行一遍
user表和数据全部恢复出来了,有了.sql的脚本,可以在任意的mysql库上去重建库表及数据
我们还可以直接导出纯表数据:
user.txt内容如下:
这样就把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出生日期转换为年龄并分组统计人数的方法示例
栏 目:MySQL
本文标题:mysqldump进行数据备份详解
本文地址:https://idc91.com/shujuku/4761.html
您可能感兴趣的文章
- 05-31MySQL中的 inner join 和 left join的区别解析(小结果集驱动大结果集)
- 05-31MySQL索引失效十种场景与优化方案
- 05-31MYSQL 高级文本查询之regexp_like和REGEXP详解
- 05-31MySQL获取binlog的开始时间和结束时间(最新方法)
- 05-31MySQL索引查询的具体使用
- 05-31基于MySQL和Redis扣减库存的实践
- 05-31关于MySQL的存储过程与存储函数
- 05-31MySQL实战文章(非常全的基础入门类教程)
- 05-31MySQL Flink Watermark实现事件时间处理的关键技术
- 05-31MySQL Flink实时流处理的核心技术之窗口机制
阅读排行
推荐教程
- 05-30Navicat for MySQL 11注册码激活码汇总
- 05-27Mysql误删数据快速恢复
- 05-31VS2022连接数据库MySQL并进行基本的表的操作指南
- 05-30解决seata不能使用mysql8版本的问题方法
- 05-30MYSQL字符集设置的方法详解(终端的字符集)
- 05-30解决MySQL启动报错:ERROR 2003 (HY000): Can't con
- 05-30关于Mysql-connector-java驱动版本问题总结
- 11-22mac下安装mysql忘记密码的修改方法
- 05-30MySQL中的隐藏列的具体查看
- 11-22mysql exists与not exists实例详解