Centos7完全备份与恢复
实验材料
一台Centos7已安装Mysql数据库,并开启3306端口
物理冷备份与恢复
1.关闭mysql数据库
[root@localhost ~]# systemctl stop mysqld(关闭mysqld服务)
[root@localhost ~]# netstat -anpt | grep mysqld(查看mysqld服务是否关闭)
2.创建备份数据存储路径
[root@localhost ~]# mkdir /backup
3.使用tar创建备份文件
[root@localhost ~]# tar zcf /backup/mysql_all-$(date +%F).tar.gz /usr/local/mysql/data/
4.模拟故障—将数据全部迁移,查看mysql服务能否重启成功
[root@localhost ~]# mkdir bak
[root@localhost ~]# mv /usr/local/mysql/data/ bak/
5.恢复数据库
[root@localhost ~]# mkdir restort
[root@localhost ~]# tar zxf /backup/mysql_all-2020-08-25.tar.gz -C restort/
[root@localhost ~]# mv restort/usr/local/mysql/data/ /usr/local/mysql/data
mysqldump备份与恢复
热备,不需要关闭数据库
一.备份操作
1).备份指定库中的部分表
[root@localhost ~]# mysqldump -uroot -p123 www cjb > www-cjb.sql
2).配置一个或多个完整的库
[root@localhost ~]# mysqldump -uroot -p123 --databases qqq > qqq.sql
3).备份所有库
[root@localhost ~]# mysqldump -uroot -p123 --opt --all-databases > all.sql
4).查看备份表
[root@localhost ~]# grep -v "^--" www-cjb.sql |grep -v "^/" |grep -v "^$"
二.模拟故障,删除之前创建的库;
mysql> drop database qqq;
mysql> drop database www;(www库中的表也会删除)
三.恢复操作
1).恢复表到指定库
[root@localhost ~]# mysql -uroot -p test < www-cjb.sql
[root@localhost ~]# mysql -uroot -p -e 'select *from test.cjb';(进行查看)
2).恢复指定库
[root@localhost ~]# mysql -uroot -p < qqq.sql
[root@localhost ~]# mysql -uroot -p -e 'show databases';(进行查看)
实验完成