mysql的全量备份与增量备份
mysql的全量备份与增量备份
全量备份:可以使用mysqldump直接备份整个库或者是备份其中某一个库或者一个库中的某个表。
备份所有数据库:
[root@my ~]# mysqldump -uroot -p123456 --all-databases >/opt/all.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
备份单个数据库的所有表:
[root@my ~]# mysqldump -uroot -p123456 --databases test>/opt/test.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
备份数据库中的单个表的结构:
[root@my ~]# mysqldump -uroot -p123456 -d test userinfo >/opt/test_userinfo_jiegou.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
备份数据库中的单个表的内容:
[root@my ~]# mysqldump -uroot -p123456 test userinfo>/opt/test_userinfo_neirong.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
增量备份:增量备份是针对于数据库的bin-log日志进行备份的,需要开始数据库的bin-log日志。增量备份是在全量的基础上进行操作的。增量备份主要是靠mysql记录的bin-log日志。(可以把二进制日志保存成每天的一个文件)
1.开启二进制日志文件;
[root@my ~]# echo -e "log-bin = /usr/local/mysql/logs/mysql_bin \nserver_id = 1\n max_binlog_size = 100M " >>/etc/my.cnf
根据position值位置进行恢复;
[root@my ~]# mysqlbinlog --start-position=1 --stop-position=795 /usr/local/mysql/logs/mysql_bin.000001 |mysql -uroot -p123456
根据时间点位置进行恢复;-d指定数据库,选项-h指定主机
[root@my ~]#mysqlbinlog --start-date='2019-05-30 14:49:25' --stop-date='2019-05-30 14:52:39' -d linux -h127.0.0.1 /usr/local/mysql/logs/mysql-bin.000001 |mysql -uroot -p123456
将二进制日志文件中所有的数据记录全部恢复;
[root@my ~]# mysqlbinlog /usr/local/mysql/logs/mysql_bin.000001 |mysql -uroot -p123123
脚本:
全量备份:
[root@calldb1 ~]# cat /shell/fs_sql_bak.sh
#!/bin/bash
##beifen sql
Bakdir=/data/sql-bak
Time=$(date +"%F_%T")
[ -f /usr/bin/mysqldump ] && echo "ok" || exit
/usr/bin/mysqldump -uroot -p123456 -R --all-databases > $Bakdir/$Time"_34.sql"
#echo $Bakdir/$Time"_34.sql"
/usr/bin/mysqldump dbname -uroot -p123456 > $Bakdir/$Time"-dbname.sql"
增量备份:
[root@calldb2 shell]# cat zeng_sql.sh
#!/bin/bash
## zeng liang bak sql
Logdir=/usr/local/mysql/logs
Time=$(date +%F)
mkdir $Logdir/"log-"$Time
find $Logdir -type f -mmin 1 -exec cp {} $Logdir/"log-"$Time/ \;
if [ -f $Logdir/"log-"$Time/mysql-bin.* ];then
echo "mysql is zeng backup success on time-$(date +%F)" >>$Logdir/"log-"$Time/mysql_zeng_backup.log
else
echo "mysql is zeng backup fail on time-$(date +%F)" >>$Logdir/"log-"$Time/mysql_zeng_backup.log
fi
mysqladmin -uroot -p123456 flush-logs >/dev/null
生产环境:
建议一周或者三天进行一次全量备份,一天一次增量备份。
mysql的全量备份与增量备份的更多相关文章
- Mysql备份系列(4)--lvm-snapshot备份mysql数据(全量+增量)操作记录
Mysql最常用的三种备份工具分别是mysqldump.Xtrabackup(innobackupex工具).lvm-snapshot快照.前面分别介绍了:Mysql备份系列(1)--备份方案总结性梳 ...
- 【MySQL】全量+增量的备份/恢复
生产环境中,有时需要做MySQL的备份和恢复工作.因MySQL是在运行过程中的,做全量备份需要时间,全量备份完成后又有数据变动,此时需要增量备份辅助.如果想恢复数据到一个空库(例如数据迁移或者上云等更 ...
- mysql 全量备份以及增量备份
MySQL 的全量备份很简单,增量备份虽然会手动使用但是还没写过脚本去实现增量备份.今天搞一搞,顺便回忆一下MySQL的基本操作.
- mysql全量备份与增量备份
mysql全量备份与增量备份 1.全量备份 全量备份就是把数据库中所有的数据进行备份. 备份所有库: mysqldump -uroot -p456 -S /data/3306/mysql.sock ...
- Centos 6.9 安装xtrabackup-2.4.8 通用包,yum安装,全量备份,增量备份
xtrabackup-2.4.8的安装及使用 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备 ...
- xtrabackup实现全量备份和增量备份
mysql增量和完全备份innobackupex2.1.9版本1 yum安装: 官网地址:https://www.percona.com/doc/percona-xtrabackup/LATEST/i ...
- Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份)
原文地址:http://www.tuicool.com/articles/RZRnq2 Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对In ...
- Percona备份mysql全库及指定数据库(完整备份与增量备份)
Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份) Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对I ...
- 【运维实战】利用tar -g 实现简单全量备份和增量备份(带演示)
备份产生 全量备份指完全备份,增量备份指针对上次至今的修改进行备份.linux提供tar -g可实现备份功能. 第一次运行 tar -g 备份存放目录/snapshot -czvf 备份存放目录/备 ...
随机推荐
- XML炸弹
XML炸弹XML document type definition (DTD)可以定义entity,DTD可以出现在外部文件或文件内部.利用DTD可以产生XML炸弹,也就是能迅速占用大量内存的文件,如 ...
- 关于苹果手机设置fiddler代理后无网络无法抓包的问题
1.设置代理后,需要在苹果手机的关于本机中,打开证书信任 这样就可以抓包咯
- 2018牛客网暑期ACM多校训练营(第二场):discount(基环树DP)
题意:有N个不同的商品,每个商品原价是Pi元,如果选择打折,可以减少Di元. 现在加一种规则,每个商品有一个友好商品Fai,如果i用原价买,则可以免费买Fai. 现在问买到所有物品的最小价格. 思路 ...
- 2019牛客暑期多校训练营(第六场) H:Train Driver (最短路+概率)
题意:给定无向图,Alice在A集合选一个点,Bob在B集合选一个点,CXK在全集里选择一个点. 然后问“三人到某一点集合打篮球的最小距离”的期望. 思路:做过一个裸题,就是给定三人位置,问去哪里集合 ...
- Mac安装vue.js开发环境
Mac安装vue.js开发环境 DannyHooDanny的专栏订阅 一.vue.js开发环境 二.初始化一个vue.js项目 三.vue.js项目打包部署 本来以为在Mac上搭建vue.js的环境挺 ...
- centos 7 开启外网方法端口方法
firewall-cmd --zone=public --add-port=80/tcp --permanent 开启80端口 systemctl stop firewalld.service sy ...
- 开源项目(9-0)综述--基于深度学习的目标跟踪sort与deep-sort
基于深度学习的目标跟踪sort与deep-sort https://github.com/Ewenwan/MVision/tree/master/3D_Object_Detection/Object_ ...
- vue基于iview树状表格,封装完善
先安装iview后在使用 完善按钮不显示问题 ,当children过多时,点击不动问题等 封装 <template> <div :style="{width:tableWi ...
- 大文件断点续传插件webupload插件
java两台服务器之间,大文件上传(续传),采用了Socket通信机制以及JavaIO流两个技术点,具体思路如下: 实现思路: 1.服:利用ServerSocket搭建服务器,开启相应端口,进行长连接 ...
- 关于api创建监控项,添加灵活调度的事件间隔
在api文档中没有明确说明,可以查询数据库,得到的是一个字符串,