最近在开发小程序,由于服务器只有一台,所以不能数据库异机备份,出于数据安全的考虑,就做了一个数据库定时备份并发送邮件到自己的邮箱的小工具,先看下工具界面 这个工具主要涉及到三个部分 1.MYSQL自动备份...2.发送邮件 3.定时任务 MYSQL备份可以通过调用mysqldump命令从而来进行备份,这里提供一个命令大全:https://www.jb51.net/article/135724.htm 这里因为工具运行在服务器...default-character-set=gb2312 --lock-tables --verbose --force --port=端口号 --user=用户名 --password=密码 数据库名 -r 备份到的地址...异常信息:" + ex.Message); } } 发送邮件部分使用的就是微软自带的基础库,配置stmp服务商域名,和你的邮箱账号,发送邮件授权码。...项目地址:MYSQL数据自动备份并发送邮件工具: MYSQL自动定时备份并发送数据备份文件至指定邮箱 更新20181220 修复问题 1.因为服务器厂商默认屏蔽25端口,所以需要使用ssl加密465端口发送
在上一篇MySQL备份中我们提到MySQL的备份工具包括用于逻辑备份的SQL语句、将SQL语句与操作系统的命令结合的物理备份工具(例如,“LOCK TABLE”)、MySQL企业版备份(物理备份)、“mysqldump...”,及第三方工具。...本文将详细介绍MySQL企业版备份工具。...MySQL企业版备份工具是一款支持多平台的热备份工具,通过命令行调用“mysqlbackup”执行操作,针对InnoDB表进行优化,并支持MySQL的其他存储引擎。...选项,备份将仅包含MySQL相关的文件。
/bin/bash #by azura #About database backup #URL https://www.mxsina.com DBCMD=/usr/local/mysql/bin/mysqldump...123456789 #数字段请修改为root用户数据库连接密码 DATABASE=emlogdb #emlogdb请修改为备份的数据库...---------------------------------------------------------" echo echo "Start the database backup" #示例备份命令...mysqlbak/bak_emlogdb.sql $DBCMD -u$DBUSER -p$DBPWD $DATABASE > $BAK_DIR/db_emlog.sql #db_emlog.sql可修改为备份文件的文件名...else echo "Backup Fail" fi find $BAK_DIR -mtime +30 -exec rm -rf {} \; #此处数字可修改表示删除30前的数据
概述 mysql脚本加crontab实现自动备份。 具体内容 vi /opt/mysqlBackup.sh #!.../bin/bash mysql_user="USER" # MySQL备份用户 mysql_password="PASSWORD" # MySQL备份用户的密码 mysql_host="localhost..." mysql_port="3306" mysql_charset="utf8" # MySQL编码 backup_db_arr=("db1" "db2") # 要备份的数据库名称,多个用空格分开隔开...如("db1" "db2" "db3") backup_location=/opt/mysql # 备份数据存放位置,末尾请不要带"/",此项可以保持默认,程序会自动创建文件夹 expire_backup_delete..." # 判断有没有定义备份的数据库,如果定义则开始备份,否则退出备份 if [ "$backup_db_arr" !
文章时间: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.../$time.sql.gz echo '数据库备份完成' find /home/dbback/ -mtime +3 -name "*.sql.gz*" -exec rm -rf {} \; #删除3天以上的备份...sql echo '检查删除过期备份数据库成功' 说明 -u 后面跟的是用户名 -p 后面跟的是密码 datebaes 是数据库的名字 /data/ 是生成的路径及文件名字 $(date +%Y%m%d
MySQL的安装包里面提供了“mysqldump”工具,它可以执行逻辑备份,如果执行备份的对象是InnoDB存储引擎,则可以执行热备份,默认情况下,它对所有的引擎执行温备份。...在大多数的运维场景中,用户利用Linux的“crontab”,或Windows的任务调度程序自动运行“mysqldump”。...“mysqldump”可以将表的内容转储为文件,具有如下特点: 备份全部的数据库、指定的数据库,或指定的表。 允许在本地或远程进行备份。 独立于存储引擎。 生成文本格式的转储文件。...它提供了一个快速的转储操作,并产生一个可以快速重新加载到MySQL服务器的转储文件。...加载该表,需要更改备份路径,使用“mysql”客户端处理“.sql”文件,使用“mysqlimport”处理“.txt”文件。
使用AutoMySQLBackup工具自动备份MySQL数据库 1.首先到官网查看开源软件AutoMySQLBackup下载地址。...CONFIG_mysql_dump_password='aut0test' 访问数据库的密码(本例中为方便起见设置为aut0test,实际使用时请设置为足够复杂的密码)....CONFIG_mysql_dump_host='localhost' 要备份服务器的主机名(本例中为本机,故设置为localhost). ?...16.继续修改要备份的数据库名称(如保持CONFIG_db_names=()则将备份所有数据库)。...24.输入“ls /tmp/dbbackup/”可发现备份文件夹。 25.如需自动运行此命令则可输入“crontab -e”编辑crontab文件。 26.默认此文件为空。
可按要求对备份是否压缩(mydumper 自动压缩) 3. 备份失败允许再尝试备份一次 4....slave_statement = ""; std_err = ""; start_time = time.strftime("%Y%m%d%H%M%S") # 清除可能遗留的备份...(2) master 的log-file 和 log-pos 信息 (必有); slave 的host、log-file 和 log-pos 信息 (备机是slave 才有)...def execute(cmd): ''''' 1.执行 shell 命令 2.返回执行信息 (returncode = 0 则执行成功, std_err 为报错的错误信息...my_args[12]]) conn.commit() except mydb.Error, e: pass # print "Mysql
定时执行脚本: 1、执行 crontab -e 00 00 * * * /bin/bash yourpath/mysqlbak.sh 2、打开自动执行文件 vi /etc/crontab... 在etc中加入如下内容,让其自动执行任务。 ...00 00 * * * root /mysqlbak.sh 以上两个 00 00 * * * 为每天的凌晨自动执行脚本 分 时 日 月 周 命令 M: 分钟(0-59...d: 一星期内的天(0~6,0为星期天)。 ...usr/local/sbin:/usr/local/mysql/bin export PATH #数据库用户名 dbuser='root' #数据库密码 dbpasswd='123456
1、执行 crontab -e 00 00 /bin/bash yourpath/mysqlbak.sh 2、打开自动执行文件 vi /etc/crontab 在etc中加入如下内容,让其自动执行任务...00 00 root /mysqlbak.sh 以上两个 00 00 * 为每天的凌晨自动执行脚本 分 时 日 月 周 命令 M: 分钟(0-59)。...d: 一星期内的天(0~6,0为星期天)。...0 1 每年执行 0 0 1 1 * 重启cron /etc/rc.d/init.d/crond restart or service crond restart 详细请看crond的wiki.../sbin:/usr/local/mysql/bin export PATH 数据库用户名 dbuser=’root’ 数据库密码 dbpasswd=’123456′ 数据库名,可以定义多个数据库,中间以空格隔开
/bin/bash #the script is backup all databases for mysql server,first grant all on *.* to adminbak@'172.16.2.222
/bin/bash db_user="root" db_passwd="123456" db_name="test_db" #进入备份目录将之前的移动到old目录 cd /mnt/backup/bakmysql...directory now" mv test_db* /mnt/backup/bakmysqlold echo "Old databases are moved to bakmysqlold folder" #备份目录...backup_dir="/mnt/backup/bakmysql" #时间格式 time=$(date +"%Y-%m-%d") #mysql 备份的命令,注意有空格和没有空格 mysqldump -...db_name > "$backup_dir/$db_name"-"$time.sql" echo "your database backup successfully completed" #这里将7天之前的备份文件删掉...bak sql file " else echo "7days ago bak sql file not exist " echo "bash complete" fi 然后通过下面命令将脚步加入系统的计划任务
背景 对于概念的说明不做赘述 个人觉得冷备份数据除了操作方法简单,最大的优点便是安全 为了对比,可参考前面整理的 —— 【MySQL 使用 XtraBackup 进行数据热备份指导 [全量+增量]...感觉,这个技术含量不如 —— 使用 XtraBackup 进行数据热备 ---- Shell 脚本自动备份 不过,这种方式需要 MySQL 服务开启,不然无法备份数据 个人觉得有点像热备份 但是,...如("db1" "db2" "db3") backup_location=/var/lib/mysql/backup #备份数据存放位置,末尾请不要带"/",此项可以保持默认,程序会自动创建文件夹...MySQL 自动备份 shell 脚本】 【题外话】 个人觉得 这种方式倒是挺适合本地测试或者小型项目 最简单的操作就是: 可以进行 .sql 文件的导出操作嘛...使用 Navicat 等数据库工具 就可以很方便的导出数据 并且 导出操作也较为方便
基于前面的文章方法,加入批处理命令即可实现自动备份。只是由于批处理命令中对于备份文件的名字按照时间命名比较特别,所以特别整理一文。...缺点是占用空间比较多,备份期间mysql会短时间断开(例如:针对30M左右的数据库耗时5s左右),针对%date:~0,10%的用法参考 。...2、mysqldump备份成sql文件 ============== 假想环境: MySQL 安装位置:C:\MySQL 论坛数据库名称为:bbs MySQL root 密码:123456 数据库备份目的地...(日期的字符串的下标是从0开始的) 3、利用WinRAR对MySQL数据库进行定时备份。 对于MySQL的备份,最好的方法就是直接备份MySQL数据库的Data目录。...这种方法缺点是占用时间比较多,备份期间压缩需要时间,mysql断开比第一种方法更多的时间,但是对于文件命名很好。
mysqldump使用简介 mysqldump 是 MySQL 系统自带的逻辑备份工具,主要用于转储数据库。...工具可配置的参数有很多,以下简要说明部分常用的参数。...几点备份小技巧 虽然 mysqldump 不太适用于大数据量的备份,但因其具有灵活方便、可根据场景定制参数等优点,还是被广泛应用在数据导出领域。...笔者根据自己的使用经验,简单分享几点 mysqldump 备份小技巧: 建议使用 --single-transaction 参数来获得一致性备份,减少锁表。...若想备份存储过程、自定义函数及事件,请加 -R -E 参数,此二者默认不开启。 不了解的参数不要随意加,按默认即可。
/bin/bash # mysql 的备份脚本 # 备份原理: # 1 # 使用列举出所有的库; # 2 # 使用每个库,列举出每张表,除了指定忽略的库; # 3...sql文件并删除本sql文件 # 6 # 强制删除超过x天的备份文件夹全部文件 # 7 # 发送处理日志到指定email # 8 # 请配合同步工具多处服务器备份..."/var/backup/hostname-mysql-data/" # 删除存在大于以下天数的备份目录 deleteRootOutDays=30 #必须是完整的email地址,因为正面的命令使用到...smtpPwd="pwd" smtpTo="qq@qq.com" smtpSubject="主机上的mysql自动备份脚本执行信息" # 配置结束行 shName=$(basename...fi fi appendLog "今天的备份目录:${todayRoot}" ver=$(mysql --version 2>&1) if [ "$?"
简介: Xtrabackup是由percona提供的mysql数据库备份工具,支持在线热备份(备份时不影响数据读写)....Xtrabackup有两个主要的工具:xtrabackup、innobackupex 1、xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表 2、innobackupex...主要是为了方便的 同时备份InnoDB和MyISAM引擎的表,但在处理myisam时需要加一个读锁。并且加入了一些使用的选项。...如slave-info可以记录备份恢 复后,作为slave需要的一些信息,根据这些信息,可以很方便的利用备份来重做slave。 本文将介绍如何用innobackupex工具做全量和增量备份。...则代表备份成功,文件会保存至一个以时间戳命名的目录内。
1.环境 测试环境:centos6.9 mysql版本:mysql5.6 mysql安装目录:/usr/local/mysql/ 备份目录:/mysqlbak 脚本位置:/mysqlbak/mysqlbak.sh...2.脚本代码 脚本内容如下,已有注释,请自行根据内容修改: #2018.4.15刘编写 #定义用户名和密码 user="root" pass="root" #设置备份目录,在此为/mysqlbak...可执行文件目录,本人mysql安装在/usr/local/mysql cd /usr/local/mysql/bin #执行导出全库语句 ...._$backuptime.zip /mysqlbak/*.sql rm -rf /mysqlbak/*.sql 3.mysqldump多种用法,可根据导倒数的第三行修改 命令行下具体用法如下:(若是本机执行可不使用...若无该文件请执行yum安装crond命令:yum install crontabs 末尾添加一行: 59 21 * * * root /mysqlbak/mysqlbak.sh 以上意思为每天21:59分执行一次备份
/sbin:/usr/local/bin:/usr/local/sbin export PATH #数据库用户名 dbuser='root' #数据库用密码 dbpasswd='123123' #需要备份的数据库...' #数据备份路径 datapath='/data/backup/wpblog_backup' #日志记录头部 echo "备份时间为${backtime},备份数据库表 ${dbname} 开始" >...,也就是只保存7天内的备份 find $datapath -name "*.sql" -type f -mtime +7 -exec rm -rf {} \; > /dev/null 2>&1 echo..."数据库 ${db} 备份成功!!"...>> ${logpath}/wpblog_backup.log else #备份失败则进行以下操作 echo "数据库 ${db} 备份失败!!"
MySQL的备份恢复是一直想要改进的地方,其中恢复是重中之重,这部分的工作要做成平台化的工作,算是有了前期的很多铺垫和延迟,最近在和同事的共同协作下,总算有了一些眉目出来。...备份的工作,总体来说,看板还是hi需要的,零零散散收集了一些需求,最后对Redis的备份做了下面的看板,MySQL的备份看板略有差别,看板指标是类似的。 ?...来进入平台自动化的设计中,首先从架构设计上,我是把这个阶段做了拆分,前后端分离的方式,后端的逻辑完全通过API的方式来交互,views层只做简单的逻辑和数据映射。...前端的设计会分为6个主要的页面,备份/恢复各有一个入口页面,通过这个页面能够跳转到全量或者是增量备份,备份恢复个有两个页面。 先来说备份,备份的入口页面是这样的。可以选择自己的需求来过滤。 ?...如果是全量备份,则会收集到概要信息和MySQL实例的明细信息,当然还有一个更直接的按钮,开启备份任务。 ?
领取专属 10元无门槛券
手把手带您无忧上云