1. 备份职责
- 备份策略 : 全备 、增量、时间、自动
- 备份检查: 备份可用性,备份是否存在
- 备份恢复测试
备份类型
热备:在数据库正常业务时,备份数据,并且能够一致性恢复(只能是innodb)对业务影响非常小温备:锁表备份,只能查询不能修改(myisam)影响到写入操作冷备关闭数据库业务,数据库没有任何变更的情况下,进行备份数据.业务停止
备份工具
基于SQL语句进行备份 mysqldump ***** mysqlbinlog ***** 基于磁盘数据文件备份 xtrabackup(XBK) :percona 第三方 ***** MySQL Enterprise Backup(MEB)#官方收费版2. 备份工具使用
2.1 mysqldump
-u -p -S -h -P 本地备份: mysqldump -uroot -p -S /tmp/mysql.sock 远程备份: mysqldump -uroot -p -h 10.0.0.51 -P3306常见参数: ```sql 例子1: [root@db01 ~]# mkdir -p /data/backup mysqldump -uroot -p -A >/data/backup/full.sql Enter password:
mysqldump: [Warning] Using a password on the command line interface can be insecure. Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don’t want to restore GTIDs, pass —set-gtid-purged=OFF. To make a complete dump, pass —all-databases —triggers —routines —events.
补充:
1.常规备份是要加 —set-gtid-purged=OFF,解决备份时的警告
[root@db01 ~]# mysqldump -uroot -p123 -A —set-gtid-purged=OFF >/backup/full.sql
2.构建主从时,做的备份,不需要加这个参数
[root@db01 ~]# mysqldump -uroot -p123 -A —set-gtid-purged=ON >/backup/full.sql
```sql
说明:生产中需要备份,生产相关的库和MySQL库
例子2 :
mysqldump -B mysql gtid --set-gtid-purged=OFF >/data/backup/b.sql
mysql gitd 均为库名
例子3 world数据库下的city,country表
mysqldump -uroot -p world city country >/backup/bak1.sql
以上备份恢复时:必须库事先存在,并且ues才能source恢复
特殊参数
-R 备份存储过程及函数
--triggers 备份触发器
-E 备份事件
-F 在备份开始时,刷新一个新binlog日志
例子4:
[root@db01 backup]# mysqldump -uroot -p -A -R -E --triggers -F >/data/backup/full.sql
