1.6、MySQL备份和还原

热备份:在数据库备份期间,支持读和写操作 innodb支持热备份
冷备份:在数据库备份期间,即不能读又不能写
温备份:在数据库备份期间,能读不能写的   myisam支持温备份
数据库文件都放在mysql的目录下
-------------------------
#ll  var/lib/mysql/*    


备份的测试还原:
做还原测试,用于测试备份的可用性
还原演练,写成规范的技术文档
备份脚本
还原脚本

备份工具
---------
mysqldump: 常见的备份工具逻辑备份工具,适用所有存储引擎,
           对MyISAM存储引擎进行温备,支持完全或部分备份;
           对innoDB存储引擎支持热备,结合binlog的增量备份
 
查询业务数据库
# mysqldump -uroot -p1  hellodb 
#  mysql -p1  -e 'show databases'
创建数据库
#  mysql -p1  -e 'create databases hellodb'

centos8.2-8 业务端服务器
----------------------
# mkdir /backup
-B 挑数据库备份
# mysqldump -uroot  -B  hellodb wordpress >  /backup/hellodb_wordpress_B_`date +%F_%H-%M-%S`.sql

备份还原
----------
关闭二进制日志:
方法一
mysql> set sql_log_bin=0;
mysql> source /backup/hellodb_`date +%F-%T`.sql
mysql> set sql_log_bin=1;     开启二进制日志
方法二
# mysql -p1  < hellodb_2021-03-14-14:00:53.sql

备份数据库hellodb
---------------
个别数据库备份
# mysqldump -uroot -p1   hellodb  >  /backup/hellodb_`date +%F_%H-%M-%S`.sql
整个数据库备份
# mysqldump -uroot -p1  -A >  /backup/all_`date +%F_%H-%M-%S`.sql

测试删除数据库与还原数据库
----------------------
删除数据库
方法一
mysql> drop database hellodb;
方法二
# mysql -p1  -e 'drop database hellodb'
方法三
# mysqladmin drop hellodb 
还原数据库
方法一
# mysql -p1 <  /backup/hellodb_2021-03-14-14:14:58.sq
方法二
mysql> set sql_log_bin=0;
mysql> source /backup/hellodb_`date +%F-%T`.sql
mysql> set sql_log_bin=1; 

创建分库创建脚本
----------------
vim mysql-backup.sh
#!/bin/bash
#[----------]
#--------------------------------------------------------------
#Author:                jackie
#QQ:                    985848343@qq.com
#Date:                  2021-03-14_15:47:52
#FileName:              1.sh
#URL:                   https://blog.csdn.net/weixin_50504879
#Description:           The test script
#Copyright (C):         2021-03-14 All rights reserved
#--------------------------------------------------------------
for db in  `mysql -p1 -e 'show databases' |grep -Ev '^(information_schema|performance_schema|sys|Database|)$'`;do mysqldum -p1 -uroot -B ${db} |gzip  > /backup/${db}_`date +%F_%H-%M-%S`.sql.gz;done
 
 
 
压缩备份文件
--------------
此为压缩格式
for db in  `mysql -p1 -e 'show databases' |grep -Ev '^(information_schema|performance_schema|sys|Database|)$'`;do mysqldum -p1 -uroot -B ${db} |gzip  > /backup/${db}_`date +%F_%H-%M-%S`.sql.gz;done

压缩数据库备份文件
# mysqldump -p1  -uroot -B hellodb |gzip >  /backup/hellodb_2021-03-14_15-24-43.sql.gz
解压缩
# gzip -d hellodb_2021-03-14_15-24-43.sql.gz


centos8.2-18 backup-mysql mysql备份服务器
------------------------------------------
设置mysql空密码登录
mysql> ALTER USER root@'localhost' identified by '';
#  yum install -y mysql-server
posted @ 2021-03-21 02:09  Jackiezhu  阅读(44)  评论(0)    收藏  举报