数据库备份

!/bin/bash

定义属性

名称:mysqlback.sh

本地存放备份数据库目录

backupdir=/data/powerhealth/softwore/mysqlback

如果文件夹不存在,创建文件夹

if [ ! -d $backupdir ]; then

mkdir -p $backupdir

echo -e "备份目录 $backupdir 创建成功。"

else

echo "备份目录 $backupdir 已经存在。"

fi

备份文件后缀时间

time="$(date +%Y%m%d_%H%M%S)"

echo "开始备份数据库..."

注意数据库备份密码 设置在/etc/my.cnf中 [mysqldump] user=xx password=xxx

备份所有数据库到本地(不压缩)

echo '/data/mysql8/bin/mysqldump --opt --all-databases > backupdir/all_time.sql'

压缩

#/data/mysql8/bin/mysqldump --opt --all-databases | gzip > backupdir/all_time.sql.gz

备份单个数据库(不压缩)

/usr/bin/mysqldump 数据库名 > backupdir/databases_time.sql

echo "备份数据完成。"

只保留7天的备份文件

find $backupdir -name "databases_*.sql" -type f -mtime +7 -exec rm -rf {} \; > /dev/null 2>&1

echo "删除备份成功。"

编辑crontab 路径 /etc 每天0点执行

0 0 * * * /x/mysqlback.sh

service crond reload

相关推荐
vvvae12347 小时前
分布式数据库
数据库
雪域迷影7 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
bug菌¹8 小时前
滚雪球学Oracle[4.2讲]:PL/SQL基础语法
数据库·oracle
逸巽散人8 小时前
SQL基础教程
数据库·sql·oracle
月空MoonSky9 小时前
Oracle中TRUNC()函数详解
数据库·sql·oracle
momo小菜pa9 小时前
【MySQL 06】表的增删查改
数据库·mysql
向上的车轮9 小时前
Django学习笔记二:数据库操作详解
数据库·django
编程老船长10 小时前
第26章 Java操作Mongodb实现数据持久化
数据库·后端·mongodb
全栈师10 小时前
SQL Server中关于个性化需求批量删除表的做法
数据库·oracle
Data 31710 小时前
Hive数仓操作(十七)
大数据·数据库·数据仓库·hive·hadoop