一、备份

1.备份分类:

根据服务器状态:热备份、温备份、冷备份
热备份:读、写不受影响;备份的同时,业务不受影响。
温备份:服务在线,但仅支持读请求,不允许写请求的情况下备份
冷备份:离线备份;需要关闭mysql服务,读写请求均不允许状态下进行。

从对象来分:物理备份与逻辑备份
物理备份:复制数据文件;

[root@localhost /var/lib/mysql]#  ll  #每个数据库是一个目录
总用量 122964
drwxr-x---  2 mysql mysql      274 7月   7 15:36 db1
drwxr-x---. 2 mysql mysql     4096 7月   7 09:51 mysql

逻辑备份:将数据导出至文本文件中;

从数据收集来分:完全备份、增量备份、差异备份
完全备份:备份全部数据;
增量备份:针对上次备份后增加的数据进行备份;
差异备份:针对上次完全备份之后发生改变的数据进行备份;

2.备份内容:数据文件、日志文件(二进制日志、事务日志)、存储过程,粗出汗书没触发器,配置文件,计划任务的脚本

3.备份工具

1)mysql自带的备份工具mysqldump(逻辑备份,
支持所有引擎,MyISAM引擎是温备,InnoDB引擎是热备,备份速度中,还原速度非常慢)、mysqlhotcopy(物理备份)
2)文件系统备份工具cp冷备份(物理备份),lvm热备份(逻辑备份,逻辑卷快照的方式)
3)其他工具mysqlbackup oracle公司提供的企业版工具、ibbackup商业工具,MYISAM是温备份,InnoDB是热备份等。

2.【使用mysqldump备份数据库】:mysqldump -uroot -p’密码’ -B 数据库名 > 备份位置路经

备份所有库: mysqldump -uroot -p‘密码’ -A -B > 备份位置路经备份单个库:mysqldump -uroot -p'密码' -B 数据库名 > 备份位置路经备份表:mysqldump -uroot -p'密码' 数据库名 表名 > 备份位置路经

#-B与不加-B的区别:不加-B少了Create database 数据库名和use 数据库名 语句,所以在还原数据库的时候就需要先进行创建数据库和占用数据库。

1.不加-B进行备份
[root@manager ~]# mysqldump -uroot -p123456 db1 > /bak/db1_1.sql 
2.加-B进行备份
[root@manager ~]# mysqldump -uroot -p123456 -B db1 > /bak/db1_2.sql
#对比文件内容
[root@manager ~]# vimdiff /bak/db1_1.sql /bak/db1_2.sql

mariadb blob保存 mariadb 导入数据_mysql

3.【使用远程连接工具NAVICAT FOR MYSQL备份还原数据库】:

方法一:

备份:

mariadb blob保存 mariadb 导入数据_mariadb blob保存_02


mariadb blob保存 mariadb 导入数据_数据库_03


mariadb blob保存 mariadb 导入数据_数据库_04


还原:

mariadb blob保存 mariadb 导入数据_数据库_05


mariadb blob保存 mariadb 导入数据_mysql_06


mariadb blob保存 mariadb 导入数据_热备份_07

方法二:

mariadb blob保存 mariadb 导入数据_mariadb blob保存_08

二、还原:

方法1: mysql -uroot -p’密码’ < 备份文件路径
方法2:进入数据库:source 备份文件路径