一个mysql的备份脚本(可以结合多实例进行调整)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

mysql数据库备份脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/bash
#定义变量信息
USER=root
PASS=redhat12345  
SOCKET= /data/3306/mysql .sock
CMD= "mysql -u$USER -p$PASS -S $SOCKET"
DUMP= "mysqldump --opt -u$USER -p$PASS -S $SOCKET"
DES= "/usr/src/mysqlbackup"
BACKUPTIME= "date +%F-%H:%M"
#目录判断
if  [ ! -d  "$DES/`date +%F`"  ]; then
mkdir  -p  "$DES/`date +%F`"
fi
#mysqldump备份数据库
echo  "----------------------------start backup mysql-------------------------------"
for  database  in  `$CMD -e  "show databases"  sed  '1,2d'  egrep  - v  "mysql|schema" `
do
$DUMP $database -B| gzip >$DES/` date  +%F`/${database}.sql.gz
if  [ $? - eq  0 ]; then
echo  "$database has been backup successful"
else
echo  "$database has been not successful"
fi
/bin/sleep  5
done
echo  "---------------------------backup is end -------------------------------------"

执行结果如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
[root@mysql-master mysqlbackup] # pwd
/usr/src/mysqlbackup
[root@mysql-master mysqlbackup] # ll
总用量 4
-rw-r--r-- 1 root root 805 12月  6 18:50 backup.sh
[root@mysql-master mysqlbackup] # bash backup.sh 
----------------------------start backup mysql-------------------------------
dawnpro has been backup successful
hangzhou has been backup successful
james has been backup successful
wanlong has been backup successful
---------------------------backup is end -------------------------------------
[root@mysql-master mysqlbackup] # ll
总用量 8
drwxr-xr-x 2 root root 4096 12月  6 18:56 2016-12-06
-rw-r--r-- 1 root root  805 12月  6 18:50 backup.sh
[root@mysql-master mysqlbackup] # ll 2016-12-06/
总用量 16
-rw-r--r-- 1 root root 512 12月  6 18:56 dawnpro.sql.gz
-rw-r--r-- 1 root root 513 12月  6 18:56 hangzhou.sql.gz
-rw-r--r-- 1 root root 511 12月  6 18:56 james.sql.gz
-rw-r--r-- 1 root root 511 12月  6 18:56 wanlong.sql.gz
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| dawnpro            |
| hangzhou           |
| james              |
| mysql              |
| performance_schema |
| wanlong            |
+--------------------+
7 rows  in  set  (0.00 sec)

做个简单的记录,后面有空再补充详细的注解或者对脚本进行优化










本文转自 冰冻vs西瓜 51CTO博客,原文链接:http://blog.51cto.com/molewan/1880184,如需转载请自行联系原作者
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
|
存储 关系型数据库 MySQL
mysql数据库备份与恢复
MySQL数据库的备份与恢复是确保数据安全性和业务连续性的关键操作。
252 4
|
9月前
|
存储 SQL 关系型数据库
|
4月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
326 3
|
4月前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
185 3
|
5月前
|
安全 关系型数据库 MySQL
MySQL用户备份
【10月更文挑战第2天】MySQL用户备份
132 3
|
5月前
|
存储 关系型数据库 MySQL
MySQL如何备份?
【10月更文挑战第2天】MySQL如何备份?
420 3
|
7月前
|
安全 关系型数据库 MySQL
揭秘MySQL海量数据迁移终极秘籍:从逻辑备份到物理复制,解锁大数据迁移的高效与安全之道
【8月更文挑战第2天】MySQL数据量很大的数据库迁移最优方案
1066 17
|
7月前
|
SQL 关系型数据库 MySQL
在Linux中,如何备份和恢复MySQL数据库?
在Linux中,如何备份和恢复MySQL数据库?
|
7月前
|
SQL 数据可视化 关系型数据库
MySQL 备份可视化巡检系统
MySQL 备份可视化巡检系统
|
7月前
|
SQL 存储 关系型数据库
MySQL备份:mydumper 备份恢复工具生产实战
MySQL备份:mydumper 备份恢复工具生产实战