文章时间:2019年1月31日 08:49:46 作者:余伟同学 说明:利用crotab定时器,实现定时自动备份mysql数据库 更新人 更新时间 更新内容 余伟同学 2019年10月10日...12:30:57 增加复杂版本sh,7天自动删除 安装crotab 安装教程地址:https://wiki.nooss.cn/archives/84.html 编写备份mysql的shell脚本 #简单版本...###################数据库配置信息####################### user=root passwd=root dbname=databases mysql_back_path...-p$passwd $dbname > $mysql_back_path/$time.sql.gz echo '数据库备份完成' find /home/dbback/ -mtime +3 -name..."*.sql.gz*" -exec rm -rf {} \; #删除3天以上的备份sql echo '检查删除过期备份数据库成功' 说明 -u 后面跟的是用户名 -p 后面跟的是密码 datebaes
1.环境 测试环境:centos6.9 mysql版本:mysql5.6 mysql安装目录:/usr/local/mysql/ 备份目录:/mysqlbak 脚本位置:/mysqlbak/mysqlbak.sh...2.脚本代码 脚本内容如下,已有注释,请自行根据内容修改: #2018.4.15刘编写 #定义用户名和密码 user="root" pass="root" #设置备份目录,在此为/mysqlbak...,可自行设置 backup_dir="/mysqlbak" #获取系统时间格式2018041521 backuptime="$(date +"%Y%m%d%H")" #删除时间设置为当前时间前2...,本人mysql安装在/usr/local/mysql cd /usr/local/mysql/bin #执行导出全库语句 ....mysqldump -h localhost -uroot -p123456 database table > /home/dump.sql 导出整个数据库结构(不包含数据) mysqldump -h
MySQL的安装位置:/usr/share/mysql 备份位置: /usr/local/backup cd /usr/local/backup touch dbbackup.sh vi dbbackup.sh.../bin/bash #备份目录 backup_path=/backup/mysql #要备份的数据库 db_name=zpzy #cd $backup_path #定义日期, day='date +%Y...#删除 mtime 表示天 day='date -d "$days days ago" +%Y%m%d' #rm -rf $day #find $backup_path -name $db_name"*...-l或cat /var/spool/cron/用户名 取消定时任务:crontab -r -u test //取消test用户任务 crontab -r //取消自己的任务 3.恢复数据库备份...# 新建bll库 mysql -u root -p bll < /backup/mysql/db_test_20190117151002.sql #输入pwd #如果是恢复压缩的备份文件,可遵循以下格式
虽说还没到正式工作坏境中,但是看到前几天顺丰快递的删库事件,emmm...打算弄个脚本实现MySQL自动备份,好歹省心点,从网上查了教程,亲身试验有效后,做个教程,以飨读者! 1....首先,明确MySQL的备份命令: mysqldump 这里主要有两种写法,但原理相同: 写法一 备份: mysqldump -uusername -ppassword database_name > /...需要备份的数据库名 2. database_name_$(date +%Y%m%d%H%M%S)为生成的备份文件名称,可自定义,这里文件名是数据库名 + 下划线 + 具体时间,$(date +%Y%m...定期删除备份文件 只是一味地备份是不行的,磁盘再大,也有用完的时候,况且保存很久以前的数据也没有任何意义,我们需要备份的是近期最新的数据,所以定期删除文件就很有必要了 定期删除,我们只需要在脚本文件中添加以下命令...: #删除七天之前的备份find $backup_dir -name $db_name"*.sql.gz" -type f -mtime +7 -exec rm -rf {} \; > /dev/null
一、mysql提供了一个mysqldump的工具可以方便的导出导入数据库信息; 一般情况下mysql的数据库安装成功后,mysqldump的位置在:/usr/bin 的目录会有mysqldump这个文件...#mysql_bin_dir:mysql的bin路径; #dataname:数据库名; #user:数据库用户名; #password:用户密码; #name:自定义备份文件前缀标识 # name:自定义备份文件前缀标识...#数据库备份的位置 backupdir=/home/mysqlbak time=` date +%Y%m%d%H%M%S` #需要备份的数据库的连接的用户名和密码和数据库 #mysql_bin_dir/..._$time.sql.gz #传输至备份服务器,如果保留本机则不需要此步骤 #scp $backupdir/mysql_$time.sql.gz 22.122.51.158:/data/bakup/159...-e (编辑工作表) -l (列出工作表里的命令) -r (删除工作作) 查看定时任务:crontab -l [root@localhost mysqlbak
/bin/bash #功能说明:本功能用于备份mysql数据库 #编写日期:2018/05/17 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr.../local/sbin:/usr/local/mysql/bin export PATH #数据库用户名 dbuser='dbuser' #数据库密码 dbpasswd='dbpasswd' #数据库名...='/opt/mysqlbackup/log' #数据备份路径 datapath='/opt/mysqlbackup' #日志记录头部 echo ‘”备份时间为${backtime},备份数据库表 ${...#删除原始文件,只留压缩后文件 rm -f ${datapath}/${backtime}.sql echo “数据库表 ${dbname} 备份成功!!”...>> ${logpath}/mysqllog.log else #备份失败则进行以下操作 echo “数据库表 ${dbname} 备份失败!!”
创建存放备份sql的文件夹 mkdir /usr/src/mysqlbackup 测试命令行备份数据库 /usr/local/mysql/bin/mysqldump --opt -uroot -proot...-hlocalhost Qls1.4 > /usr/src/mysqlbackup/`date +%F`.sql [ /usr/local/mysql/bin/mysqldump] mysql的备份脚本..." DB_NAME="Qls1.4" #你要备份的数据库 BIN_DIR="/usr/local/mysql/bin" BCK_DIR="/usr/src/mysqlbackup" #备份文件存放的位置...crontab服务中,使每天早上五点自动备份数据库 crontab -e 插入下面这一行 00 05 * * * /bin/sh /usr/src/mysqlbackup/bkDatabaseName.sh...查看自动备份任务是否创建成功 crontab -l
Python脚本自动备份Mysql数据库,此脚本会备份所有数据库,并按库名创建文件夹保存,只保留最近7天的备份数据。可自定义修改。支持Python2,、Python3。...= time.strftime("%Y%m%d%H%M%S") back_path = "/data/mysql_back/" out_time = 7*24*60*60 # 指定多少秒前的数据删除...-8类型的,需要制定数据库 conn = pymysql.connect( host=mysql_host, # 数据库地址 user=mysql_user..., # 数据库用户名 passwd=mysql_pwd, # 数据库密码 db='mysql',...如果日志是mysqldump: command not found,在备份mysql数据库时,提示mysqldump: command not found的解决方法
准备: 创建几个目录 mkdir -vp mysql_backup/data mysql_backup/logs mysql_backup/scripts data:用来存放备份数据 logs:存放脚本运行日志...scripts:存放备份脚本 1、指定数据库备份: [root@iZwz90hf9uqjtrspga3v5bZ kuliya]# cd mysql_backup/scripts/ [root@iZwz90hf9uqjtrspga3v5bZ...scripts]# vim db_backup.sh 备份脚本: BACKUP_ROOT=/data/xvdb/mysql_backup BACKUP_FILEDIR=$BACKUP_ROOT.../data DATE=$(date +%Y%m%d%H%M) ######备份###### db=数据库名称 echo ----------backup begin----------...的ip地址 -P端口:配置要备份的MySQL端口 ----以上两项是为了防止单机MySQL配置了多个端口或者多个版本,以免出错 2、批量备份脚本: BACKUP_ROOT=/data/xvdb/mysql_backup
*/ String command = "C:/Program Files/MySQL/MySQL Server 5.7/bin/mysqldump -u" + user + "...public void backup() throws IOException { logger.info("系统开启定时任务数据库备份"); try {...DbUtil.backup(file, user, password, db, ip); // 删除15天前数据库备份文件 LocalDate...notice.setCreatetime(new Date()); notice.setType(1); notice.setContent("数据库在备份中出现错误...); } logger.info("系统结束定时任务数据库备份"); } } 3.
以下演示mysql数据库的备份操作流程: 查看磁盘空间情况: 既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!...存储到当前磁盘这是最简单,却是最不推荐的;服务器有多块硬盘,最好是把备份存放到另一块硬盘上;有条件就选择更好更安全的存储介质,比如腾讯云的oss,不仅安全可靠,更价格低廉,比较适合数据备份存储使用。...1、在执行mysql数据备份前,可先执行命令查看磁盘容量: # df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root...换为实际的数据库名称; 当然,你也可以使用其实的命名规则!...DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz 注意: 把 username 替换为实际的用户名; 把 password 替换为实际的密码; 把 DatabaseName 替换为实际的数据库名
以外的ip截取 /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:" #删除以前...-e $backup_path/${date} ];then mkdir -p {$backup_path/${date},$backup_log_path} fi #echo "开始备份所有数据库"...:${date} 备份方式:mysqldump 备份数据库:$dbname($size) 备份状态:成功!"...>>$backup_log else cd $backup_path/${date} echo "备份时间:${date} 备份方式:mysqldump 备份数据库:${dbname} 备份状态:失败,.../ echo "备份时间:${date} 备份方式:云备份数据库:$dbname($size) 备份状态:成功!"
-d $backuppath ] && -=mysql_$( +%Y-%m-% db -u$ -p$ -S /tmp/mysql.sock $db > [ == ] #$?...$( +%Y-%m-%d)>> -czf $backupname..gz * [ == $( +%Y-%m-%d)>> $( +%Y-%m-%d)>> -f *=mysql...-f $delname #删除文件。 将以上脚本加入定时计划crontab中即可,注意脚本的执行权限设置。
Linux实现MySQL数据库凌晨自动备份 备份多数据库,每天凌晨两点执行,使用当前年月日作为文件夹,不存在该文件夹就创建,删除七天前备份过的文件。...-d $backup_dir ];then 12 mkdir -p $backup_dir 13 fi 14 15 # 将需要备份的数据放入...16 db_array=("dbName1" "dbName1" "dbName1") #配置要备份的数据库 17 18 19 for db_name in ${db_array...-u root -p$login_passwd $db_name > $backup_dir$db_name.sql 23 24 done 25 26 # 删除...7天前备份的文件 27 find backup_dir -atime +7 -name "*.sql" -exec rm -rf {} \ 28 29 echo "备份结束
=`date +%Y-%m-%d-%H:%M:%S` # 备份数据库 DB=10_db # 数据库地址 HOST=10.1.11.10:30000 # 删除7天前的备份,即只保留近 7 天的备份,按实际需求更改...DAYS=7 # 最终保存的数据库备份文件 TAR_BAK="mongod_bak_$DATE.tar.gz" cd $OUT_DIR rm -rf $OUT_DIR/* mkdir -p $OUT_DIR...创建以上文件中的目录并赋予脚本执行权限: chmod +x mongodb_bak.sh 3、添加计划任务: 进入编辑任务界面:crontab -e 配置定时任务:30 1 * * * /opt/mongobk.sh 每天一点30分备份数据库...如果文件不存在会自动创建。 o crontab –l : 显示 crontab 文件。 o crontab -r : 删除 crontab 文件。...o crontab -ir : 删除 crontab 文件前提醒用户。
/bin/bash #by azura #About database backup #URL https://www.mxsina.com DBCMD=/usr/local/mysql/bin/mysqldump...#请修改为数据库dump命令目录 DBUSER=root DBPWD=123456789 #数字段请修改为root用户数据库连接密码 DATABASE=emlogdb...#emlogdb请修改为备份的数据库 BAK_DIR=/mysqlbak/`date +%Y%m%d` #/mysqlbak/目录可自由修改 if...---------------------------------------------------------" echo echo "Start the database backup" #示例备份命令..." else echo "Backup Fail" fi find $BAK_DIR -mtime +30 -exec rm -rf {} \; #此处数字可修改表示删除
//数据库主机IP dbuser=root //数据库用户 dbpasswd=123456 //数据库密码 db=test //数据库库名 2.创建备份目录 if [ !...3.创建当天备份目录 cd $backuppath mkdir -p $date cd $date 切换到备份目录中,根据当前时间来创建一个目录,用于存放当天的备份文件,再切换至当天的备份目录中。...4.备份单个数据库 mysqldump -h$dbhost -u$dbuser -p$dbpasswd $db > $date.sql 目前脚本已经切换至当天的备份目录中,使用mysqldump对单个数据库进行备份...5.定期删除备份文件 find $backuppath -type d -mtime +7 -exec rm -rf {} \; 只是一味地备份也不行,磁盘再大也有用完的那一天,况且很久以前的数据也没有任何意义...,我们需要备份的是近期最新的数据,所以定期删除文件就很有必要了。
而对于一些网站、系统来说,数据库就是一切,所以做好数据库的备份是至关重要的! 备份是什么?...基本的备份脚本,其它存储介质只是介质的访问方式可能不大一样。...1、查看磁盘空间情况: 既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!...换为实际的数据库名称;当然,你也可以使用其实的命名规则!...DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz 注意: 把 username 替换为实际的用户名;把 password 替换为实际的密码;把 DatabaseName 替换为实际的数据库名
概述 mysql脚本加crontab实现自动备份。 具体内容 vi /opt/mysqlBackup.sh #!..." mysql_port="3306" mysql_charset="utf8" # MySQL编码 backup_db_arr=("db1" "db2") # 要备份的数据库名称,多个用空格分开隔开...exit else echo $welcome_msg fi # 连接到mysql数据库,无法连接则备份退出 mysql -h$mysql_host -P$mysql_port -u$..." # 判断有没有定义备份的数据库,如果定义则开始备份,否则退出备份 if [ "$backup_db_arr" !...backup stop" exit fi # 如果开启了删除过期备份,则进行删除操作 if [ "$expire_backup_delete
领取专属 10元无门槛券
手把手带您无忧上云