/mysql -u$username -p$password -h$hostip -e"SHOW DATABASES;"` denylists=(Database mysql test information_schema...performance_schema) #循环备份数据库 for dbname in ${dblists[*]} do #排除不用备份的数据库 flag=0 for i in ${denylists...[*]} do if [ "$i" = "$dbname" ] then flag=1 fi done if [ $flag -ne 1 ] then #指定时间日期和备份目录.../bin/mysql -u$username -p$password -h$hostip $dbname -e"SHOW MASTER STATUS;" >>$LogFile #开始备份数据库...--net_buffer_length=163840 | gzip>$backupdir echo " " >> $LogFile /usr/local/mysql/bin/mysql -u$
/bin/bash # 以下配置信息请自己修改 mysql_user="root" #MySQL备份用户 mysql_password="summer123" #MySQL备份用户的密码 mysql_host...="192.168.0.1" mysql_port="3306" mysql_charset="utf8" #MySQL编码 backup_db_arr=("testapp") #要备份的数据库名称,多个用空格分开隔开...开启时有效 # 本行开始以下不需要修改 backup_time=`date +%Y%m%d%H%M` #定义备份详细时间 backup_Ymd=`date +%Y-%m-%d` #定义备份目录中的年月日时间...backup_3ago=`date -d '7 days ago' +%Y-%m-%d` #3天之前的日期 backup_dir=$backup_location/$backup_Ymd #备份文件夹全路径...." # 判断有没有定义备份的数据库,如果定义则开始备份,否则退出备份 if [ "$backup_db_arr" !
环境是linux的,使用的是mysqldump命令。 创建一个脚本dbbackup.sh然后内容如下: #!.../bin/bash # 执行此文件将会备份数据库到/opt/backup/data目录中 cd /opt/backup/data date=`date -I`; #取出当前的日期 /opt/lampp.../bin/mysqldump -u用户名 -p密码 数据库> 备份文件名前缀_$date.sql; #导出数据库为sql脚本 /bin/tar zcvhf 备份文件名前缀_$date.tar.gz 备份文件名前缀..._$date.sql; #压缩sql脚本 rm 备份文件名前缀_$date.sql #删除sql文件 现在我们将这个脚本添加到定时任务中去,让每天都执行一次 使用crontab -l命令查看当前定时任务...具体的cron可以查看这个blog说的比较清楚一些: http://www.cnblogs.com/lhj588/archive/2012/02/20/2359172.html
/bin/sh #mysql_backup begintime=`date +"%Y-%m-%d_%H-%M-%S"` format_time=`date +"%Y-%m-%d_%H-%M-%S"` tar_time...' file_cnf=/etc/my.cnf user_name=root passwd='123456' sock=/data/mysqldata/mysql.sock out_log=$backdir.../xtraback_log_$format_time time_cost=$backdir/xtraback_time.txt #判断数据备份的压缩目录是否存在 if [ !...-d "$backdir" ]; then mkdir -p $backdir else #判断昨日是否备份,有则打包压缩后删除之前备份的目录 if [ -d "$backdir/rec2..." ];then tar zcf ${tardir}/mysql_bckup_$tar_time.tar.gz -C $backdir .
1、分库备份 !/bin/bash image.png 2、分库分表备份 !/bin/sh image.png [ !
/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前的数据
/bin/sh #mysql_backup begintime=`date +"%Y-%m-%d_%H-%M-%S"` format_time=`date +"%Y-%m-%d_%H-%M-%S"...' file_cnf=/etc/my.cnf user_name=root passwd='123456' sock=/data/mysqldata/mysql.sock out_log=$backdir.../xtraback_log_$format_time time_cost=$backdir/xtraback_time.txt #判断数据备份的压缩目录是否存在 if [ !...-d "$backdir" ]; then mkdir -p $backdir else #判断昨日是否备份,有则打包压缩后删除之前备份的目录 if [ -d "$backdir/rec2..." ];then tar zcf ${tardir}/mysql_bckup_$tar_time.tar.gz -C $backdir .
/bin/bash mysql_host="localhost" mysql_user="xxxx" mysql_pwd="xxxxx" #保存备份sql的文件路径 db_dir="/data/backup...-d $db_dir];then # mkdir $db_dir #fi db_arr=$(echo 'show databases' | mysql -u$mysql_user -p$...mysql_pwd -h$mysql_host) #获得当前日期 date=$(date +%Y%m%d) ziname=$date".zip" #指定的数据库文件 thisdb="zzaly"...-p$mysql_pwd -h$mysql_host $dbname > $db_dir"/"$sqlfile fi done find $db_dir -mtime +5 -type f |...xargs rm -f #删除5天前的数据库
今天简单的写了个python的mysql备份脚本,其实也不是很难呀。比shell简洁了很多! 开整: 注释都用英文写了,有些英语基础的朋友应该都可以看得懂了! #!... 'root' #mysqlbackup password Password = 'root' #mysqlbackup command Mysqlcommand = '/usr/local/mysql.../bin/mysqldump' #gzip command Gzipcommand = '/bin/gzip' #backup mysql database Mysqldata = ['gtshop...'sucessful gzip gtshop' else: print 'gzip failed' 执行结果: [root@localhost script]# python mysql_backup.py
Innobackupex是Xtrabackup的一部分,其实质也是调用xtrabackup。主要的不同是Xtrabackup除了支持innodb引擎外还支持xtradb引擎。...本文主要封装了Innobackupex到shell脚本进行定期备份,供大家参考。...1、脚本描述 a、支持增量备份以及全备 b、需要传递到备份脚本(如备份路径,连接相关参数等) c、基于周日,周三的全量备份,其他增量备份 d、可根据需要调整脚本,比如压缩备份的文件夹以及rsync等 2...directory --host= Set mysql host --port= Set mysql port --...user= Set mysql user name --password= Set mysql user password EOF }
定时执行脚本: 1、执行 crontab -e 00 00 * * * /bin/bash yourpath/mysqlbak.sh 2、打开自动执行文件 vi /etc/crontab...00 00 * * * root /mysqlbak.sh 以上两个 00 00 * * * 为每天的凌晨自动执行脚本 分 时 日 月 周 命令 M: 分钟(0-59...d: 一星期内的天(0~6,0为星期天)。 ...0 0 1 1 * 重启cron /etc/rc.d/init.d/crond restart or service crond restart 详细请看crond的wiki...usr/local/sbin:/usr/local/mysql/bin export PATH #数据库用户名 dbuser='root' #数据库密码 dbpasswd='123456
每天固定时间用mysqldump 备份mysql数据。 #!.../bin/bash 每天早上4点, mysql备份数据 orangleliu chmod 700 backup.sh crontab -e 0 4 * /home/erya/run/moniter/...mysql_backup.sh user="radius" password="" host="localhost" db_name="radius" backup directory base_dir...="/home/backup" backup_log="${base_dir}/mysql_backup.log" backup_path=${base_dir} file info date=$(date
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′ 数据库名,可以定义多个数据库,中间以空格隔开...’ 数据备份路径 datapath=’/second/backup’ 日志记录头部 echo ‘”备份时间为${backtime},备份数据库表 ${dbname} 开始” >> ${logpath}/
案例需求 写一个mysql binlog备份脚本,要求每天0点0分,计算机自动备份前一天的binlog日志,打包后发送给备份服务器。...脚本应用场景: 文件备份 解决问题 日常文件备份 日常数据备份 脚本思路 1、确定binlog的位置及备份时间间隔 每天 当前要备份的binlog是谁 ...刷新binlog日志,生成新的binlog用于存储备份节点后的数据 2、打包binlog日志 以年-月-日_binlog.tar.gz格式 3、生成校验码 md5sum 4、将校验码和压缩包存入到文件夹...文件夹命名 年-月-日 再次打包 5、使用scp拷贝到备份机器 6、备份机器解压收到的目录压缩包 通过校验码 教研binlog压缩包是否完整 完整 完成备份 -----发邮件给管理员,明确备份成功.../bin/bash #Description: #Author: www.zutuanxue.com #Created Time: #将mysql的binlog日志备份到备份服务器 ######
完全备份指定数据库 DIR=/database/backupdir FILE_NAME=`date +%y%m%d%H` FILE_NAME=$DIR/db_$FILE_NAME.sql.gz echo...quick --routines --single-transaction --master-data=1 db_name | gzip > $FILE_NAME echo finish backup 从备份的文件恢复数据库...#db restore abc gunzip < /backupfiledir/12082917.sql.gz | mysql --user=dbuser --password=dbpwd --port...=3336 --host=10.10.20.1 --database=test 在备份时出现mysqldump: Error: Binlogging on server not active时,是因为mysql...的binlog没有启动,在mysql的my.ini文件中[mysqld]下面添加 log-bin=mysql-bin 然后重新启动mysql服务,问题就解决
/bin/bash #the script is backup all databases for mysql server,first grant all on *.* to adminbak@'172.16.2.222
请使用source执行脚本,在脚本后面传入'下载地址';列如:source recover.sh 'Download.URL'"; else url="https://dev.mysql.com/get...= 0 ]]; then echo "wget下载失败,请确认网络或者yum源无问题后重新执行次脚本" && exit -1; fi #下载云上备份 mkdir ${workDir}/data1 -p...|wc -l`; if [[ ${user_status} -eq 0 ]]; then useradd -s /bin/nologoin mysql fi chown -R mysql.mysql...=mysql basedir=${workDir}/mysql datadir=${workDir}/data socket=/tmp/mysql.sock server_id=666 port=3306...######################恢复数据##################################### sleep 10 systemctl stop mysqld #创建云上备份下载目录
背景 对于概念的说明不做赘述 个人觉得冷备份数据除了操作方法简单,最大的优点便是安全 为了对比,可参考前面整理的 —— 【MySQL 使用 XtraBackup 进行数据热备份指导 [全量+增量]...# 创建执行脚本 tar jcvf data_cold_back.tar.bz2 data 当需要进行冷备份操作时, 只需执行脚本命令即可(操作会覆盖掉之前备份的压缩文件,没啥不利影响) ☞ tar...感觉,这个技术含量不如 —— 使用 XtraBackup 进行数据热备 ---- Shell 脚本自动备份 不过,这种方式需要 MySQL 服务开启,不然无法备份数据 个人觉得有点像热备份 但是,...鄙人的理解是: 因为无法操作事务更新,不同于标准的热备份 可以理解为当下不对外提供数据更新操作 或者当前时间点离开集群 ☞ 脚本配置 首先创建脚本 touch backup.sh 然后,编辑如下信息...MySQL 自动备份 shell 脚本】 【题外话】 个人觉得 这种方式倒是挺适合本地测试或者小型项目 最简单的操作就是: 可以进行 .sql 文件的导出操作嘛
/bin/sh bk_to="/var/mysql-backup-`date +%Y-%m-%d-%k-%M-%S |tr -d ' '`" user_name="root" user_pw="dev"...sql=" flush tables with read lock; system cp -pR /var/lib/mysql $bk_to; unlock tables; " mysql -u
备份数据库是企业开发中必不可少的一步,今天演示一下如何在 中使用 定时备份数据。 1. 创建备份 备份脚本: #!.../bin/bash date_str=$(date +%Y%m%d-%T) cd /bf/mysql_back mysqldump -h localhost -u root --password=PASSWORD... -R -E -e \databaseName \ | gzip > /bf/mysql_back/database_$date_str.sql.gz 2.执行定时任务 利用crontab定时执行上述脚本...crontab -e 每周一凌晨执行备份 05 02 * * 1 /home/mysqls_backup/mysqlbackup.sh 查看crontab列表 crontab -l 即时生效 /etc
领取专属 10元无门槛券
手把手带您无忧上云