首页 > 数据库 >Linux 服务器下Mysql自动备份 30天滚动存储 每天凌晨2点准时备份

Linux 服务器下Mysql自动备份 30天滚动存储 每天凌晨2点准时备份

时间:2023-05-12 16:24:15浏览次数:47  
标签:Linux data 备份 30 sh file mysql backup

一、创建备份目录

  执行命令:在指定路径下创建备份目录   cd /mnt/file   mkdir data_backup

二、编写shell脚本 放在/mnt/file/data_backup里

 创建.sh shell脚本: touch bkmysql.sh

 打开脚本文件: vim bkmysql.sh

脚本文件内容如下所示:

login_user表示数据库用户名

login_passwd表示数据库密码 修改成自己数据库的用户名与密码即可

login_user=root
login_passwd=root


rq=`date +%Y%m%d`

dateDel=`date -d '+30 day ago' +%Y%m%d`
backup_dir="/mnt/file/data_backup/"$rq"/" #配置备份文件保存的目录

echo "****starting mysqldump****"
echo $backup_dir
if [ ! -d $backup_dir ];then
mkdir -p $backup_dir
fi
# 将需要备份的数据放入
db_array=("sys_user" "sys_dept" ) #配置要备份的数据库
for db_name in ${db_array[*]}
do
mysqldump -u$login_user -p$login_password $db_name > $backup_dir$db_name.sql
done
echo "****end mysqldump****"

echo "rm *"$dateDel"*"
rm *$dateDel*
echo "****end delete****"

echo "备份结束"

三、修改备份脚本文件权限:

执行命令:chmod 777 bkmysql.sh 测试:执行脚本文件看会不会出现相应的备份文件 sh bkmysql.sh

四、可能遇到的问题:mysqldump: Got error: 2002: Can‘t connect to local MySQL server through socket ‘/tmp/mysql.soc

解决办法: 1.修改mysql配置文件 vim /etc/my.cnf 配置文件中添加【client】如下: [mysqld] datadir=/usr/local/mysql/data basedir=/usr/local/mysql socket=/var/lib/mysql/mysql.sock(跟这个socket路径一样) user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid [client]port=3306socket=/var/lib/mysql/mysql.sock

五、配置定时器

修改定时器配置文件crontab: sudo vim /etc/crontab crontab文件添加以下内容: 0 2 * * * yfjf /mnt/file/data_backup/bkmysql.sh >> /mnt/file/data_backup/backup_log.log crontab配置完成后,需要重新启动服务: 重新启动(sudo /etc/init.d/cron restart); 查看crond服务是否启动: sudo service crond status   总结:   以上是本人经过实践在服务器上操作备份的过程,期间也遇到过其他的一些问题,忘记记载了。如果后续在继续创建Mysql备份滚动存储,可记载下来。关于定时器这块具体可以在网上直接搜索crontab 一般都是服务器系统自带。 作者:三尺青锋 本文链接:https://www.cnblogs.com/zhangjiale/p/17394610.html

标签:Linux,data,备份,30,sh,file,mysql,backup
From: https://www.cnblogs.com/zhangjiale/p/17394610.html

相关文章

  • 污水处理程序西门子Wincc+S7-300污水处理大项目 带西门子Winc
    污水处理程序西门子Wincc+S7-300污水处理大项目带西门子Wincc上位机+S7-300程序污水处理工艺总览包括:1.进水2.粗格栅池3.细隔栅及曝气沉砂池4.生物除臭池5.氧化沟6.配水排泥井7.二沉池8.储泥池及污泥脱水9.纤维转盘滤池10.紫外消毒及复氧池11.出水项目具有工艺流程图,wincc里的所有......
  • CentOS5.7 下mysql5.7自动备份数据脚本
    mysql5.7自动备份数据库脚本1.root用户下用cd命令进入到想要的位置创建一个脚文文件://创建脚本命令vimbackup.shvim脚本名.sh#!/bin/bashsource/etc/profile#加载系统环境变量source~/.bash_profile#加载用户环境变量set-onounset......
  • Linux系列---【赋权限的常用命令】
    一、新建用户groupaddafpgroupuseradd-gafpgroupafpecho"afp:woshimima@1234"|chpasswd二、新建目录mkdir-p/opt/app/middlesmkdir-p/opt/app/softwaremkdir-p/opt/data/mkdir-p/opt/log/mkdir-p/opt/backup/三、创建表空间CREATETABLESPACESDMD......
  • 如何在虚拟机Linux系统下(Ubuntu)安装apache2?如何更改Apache2的默认欢迎界面(无障碍)
    一、apache2的安装:1、在图形界面下,先ctrl+alt+T打开终端2、登陆root账号:输入su输入之前设置的密码待$符号变成#时候,即获得root权限3、安装apache2:输入apt-getinstallapache24、启动apache2:输入serviceapache2start5、打开虚拟机的浏览器,输入网址localhost(或者是12......
  • 详解集群级备份恢复:物理细粒度备份恢复
    摘要:在实际使用过程中,数据库集群级的故障并非高概率事件,如何安全高效地帮助客户备份恢复一部分数据库元素,才是更加实际的需求,这也是细粒度备份恢复的意义所在。本文分享自华为云社区《GaussDB(DWS)之物理细粒度备份恢复》,作者:我的橘子呢。1. 认识物理细粒度备份恢复相对于集群......
  • 详解集群级备份恢复:物理细粒度备份恢复
    摘要:在实际使用过程中,数据库集群级的故障并非高概率事件,如何安全高效地帮助客户备份恢复一部分数据库元素,才是更加实际的需求,这也是细粒度备份恢复的意义所在。本文分享自华为云社区《GaussDB(DWS)之物理细粒度备份恢复》,作者:我的橘子呢。1. 认识物理细粒度备份恢复相对于集群级备......
  • Windows跟Linux的不同处理
    1.时区1.1北京时间Windows:TimeZoneInfo.FindSystemTimeZoneById("ChinaStandardTime");Linux:TimeZoneInfotzBeijing=TimeZoneInfo.FindSystemTimeZoneById("Asia/Shanghai");1.2美东时间Window: TimeZoneInfo.FindSystemTimeZoneByI......
  • Linux下搭建FTP
    安装vsftpdyuminstall-yvsftpd开机自启动systemctlenablevsftpd.servicesystemctlstartvsftpd.servicenetstat-antup|grepftp配置vsftpdvsftpd(verysecureFTPdaemon)是一款在Linux发行版中最受推崇的FTP服务器。vsftpd支持匿名访问和本地用户模式两种......
  • 7.数据库备份还原
    5.数据库备份还原https://blog.csdn.net/zhang41228/article/details/79893230   Linux下SqlServer的备份和还原 Eagle昊2018-04-1110:58:316760收藏8分类专栏:数据库Linux学习笔记版权 数据库同时被2个专栏收录8篇文章0订阅订阅专栏 Linux学习笔......
  • NetCore项目部署到Linux之后,登录界面验证码不显示问题
    NetCore项目部署到Linux之后,登录界面验证码不显示问题1.在centos下安装libgdiplus-devel; 命令: yuminstalllibgdiplus-devel2.重启.netcore服务(supervisorctlrestart服务名称)我是用的supervisor做的守护进程或者supervisorctlreload......