说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

MySQL备份脚本大全

HTML文档下载 WORD文档下载 PDF文档下载
1、linux环境下的备份脚本2、linux环境下带邮件通知的备份脚本3、linux环境下压缩备份文件4、linux环境下的热备份5、windows环境下的离线备份6、windows平台完备的mysql定时备份脚本

 

1、linux环境下的备份脚本

2、linux环境下带邮件通知的备份脚本

3、linux环境下压缩备份文件

4、linux环境下的热备份

5、windows环境下的离线备份

6、windows平台完备的mysql定时备份脚本

 

1、linux环境下的备份脚本

 

##########################################################################mysqldump####################################################!/bin/sh# mysql_backup.sh: backup mysql databases and keep newest 5 days backup.# -----------------------------db_user="root"db_passwd="linuxtone"db_host="localhost"# the directory for story your backup file.backup_dir="/backup"# date format for backup file (dd-mm-yyyy)time="$(date +"%d-%m-%Y")"# mysql, mysqldump and some other bin's pathMYSQL="$(which mysql)"MYSQLDUMP="$(which mysqldump)"MKDIR="$(which mkdir)"RM="$(which rm)"MV="$(which mv)"GZIP="$(which gzip)"#针对不同系统,如果环境变量都有。可以去掉# check the directory for store backup is writeabletest ! -w $backup_dir && echo "Error: $backup_dir is un-writeable." && exit 0# the directory for story the newest backuptest ! -d "$backup_dir" && $MKDIR "$backup_dir"# get all databasesfor db in cdn cdn_viewdo        $MYSQLDUMP -u $db_user -h $db_host -p$db_passwd $db | $GZIP -9 > "$backup_dir/$time.$db.gz"done#delete the oldest backup 30 days agofind $backup_dir -name "*.gz" -mtime +30 |xargs rm -rfexit 0;

 

2、linux环境下带邮件通知的备份脚本

 

#############################################################################带邮件通知的mysqldump######################################!/bin/sh# Name:mysqlFullBackup.sh# PS:MySQL DataBase Full Backup.# Write by:i.Stone# Last Modify:2008-9-17## Use mysqldump --help get more detail.#scriptsDir=`pwd`mysqlDir=/usr/local/mysql ?user=rootuserPWD=111111dataBackupDir=/tmp/mysqlbackupeMailFile=$dataBackupDir/email.txteMail=liuyu@sohu.comlogFile=$dataBackupDir/mysqlbackup.logDATE=`date -I`echo "" > $eMailFileecho $(date +"%y-%m-%d %H:%M:%S") >> $eMailFilecd $dataBackupDirdumpFile=mysql_$DATE.sqlGZDumpFile=mysql_$DATE.sql.tar.gz$mysqlDir/bin/mysqldump -u$user -p$userPWD --opt --default-character-set=utf8 --extended-insert=false --triggers -R --hex-blob --all-databases --flush-logs --delete-master-logs --delete-master-logs -x > $dumpFileif [[ $? == 0 ]]; then  tar czf $GZDumpFile $dumpFile >> $eMailFile 2>&1  echo "BackupFileName:$GZDumpFile" >> $eMailFile  echo "DataBase Backup Success!" >> $eMailFile  rm -f $dumpFile# Delete daily backup files.  cd $dataBackupDir/daily  rm -f *# Delete old backup files(mtime>2).  $scriptsDir/rmBackup.sh# Move Backup Files To Backup Server.  $scriptsDir/rsyncBackup.sh     if (( !$? )); then      echo "Move Backup Files To Backup Server Success!" >> $eMailFile    else      echo "Move Backup Files To Backup Server Fail!" >> $eMailFile    fielse  echo "DataBase Backup Fail!" >> $emailFilefiecho "--------------------------------------------------------" >> $logFilecat $eMailFile >> $logFilecat $eMailFile | mail -s "MySQL Backup" $eMail

 

 

 

3、linux环境下压缩备份文件

 

 

################################################################################## tar ################################################!/bin/bash#15 3 * * * /usr/local/sbin/backup.sh#backup directoryBAK_DIR=/data/db_backupTAR="/bin/tar"TAR_FLAG="czvf"#BAKupif [ ! -d $BAK_DIR ];then          mkdir -p $BAK_DIRfiCOMM="$TAR $TAR_FLAG $BAK_DIR/linuxtone-`date +%Y%m%d`.tar.gz linuxtone/"cd /data/mysql/dataeval $COMMfind $BAK_DIR -name "linuxtone-*.tar.gz" -mtime +30 |xargs rm -rf

 

 

 

4、linux环境下的热备份

 

 

######################################################################################mysqlhotcopy#####################################!/bin/shDBS=`du /var/lib/mysql/linuxtone/ | awk '{ printf $1 }'`DFS=`df /myhotco | grep myhotco | awk '{ printf $3}'`let "DBS = $DBS / 1024" let "DFS = $DFS / 1024"# more than 100M free space upif [ `expr $DBS + 100` -lt $DFS ] ; then  echo "run mysqlhotcopy ( `expr $DFS - $DBS` ) ..."  /usr/bin/mysqlhotcopy linuxtone --allowold --flushlog /myhotco fi

 

 

 

5、windows环境下的离线备份

 

net stop mysqlxcopy E:\MySQL\Data\www.okbase.net\*.* D:\bak\www.okbase.net\%date:~0,10%\ /ynet start mysql

 

 

6、windows平台完备的mysql定时备份脚本

 

@echo offclscolor 1Etitle %date% %time:~,8% 备份MYSQL数据库 BY:REKFAN::::::::::::::::::::::::以下是需要配置的参数::::::::::::::::::::::::        rem 设置 MySql服务器root账号的密码,特殊符号需要在其前添加两个^,如!、>、|、^、&、* 等        SET MySql_pw=mysql 的root密码        rem 设置 数据库备份目录        SET BAK_Dir=f:db_bak        rem 设置 需要备份的myisam格式数据库,多数据库用逗号分隔        SET BAK_db_myisam=myisam_db1,myisam_db2,myisam_db3        rem 设置 需要备份的innodb格式数据库,多数据库用逗号分隔        SET BAK_db_innodb=innodb_1,innodb_2,innodb_3        rem 设置 自动删除几天的备份,0为删除所有,慎用        SET Bak_Time_ago=5        rem 设置 WinRAR压缩软件的路径        SET RAR_Dir="C:Program FilesWinRARWinRAR.exe"        rem 设置 以2001-01-01格式的日期为子目录(不必修改)        SET BAK_Dir2=%date:~0,4%-%date:~5,2%-%date:~8,2%        rem 设置 备份文件名        SET BAK_FILE=%%i_%BAK_Dir2%.sql        rem 设置 日志文件名        SET LOG_FILE=%BAK_Dir%%BAK_Dir2%MY_DBBAK.log::::::::::::::::::::::::以上是需要配置的参数::::::::::::::::::::::::echo. ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡echo. ┃                                                                   ┃echo. ┃                   欢迎使用Mysql自动备份批处理                     ┃echo. ┃           本代码由rekfan编写 Http://blog.rekfan.com               ┃echo. ┃                                                                   ┃echo. ┃  …………………………………………………………………………………… ┃echo. ┃ 关于本脚本                                                        ┃echo. ┃ ::本脚本只需自定义MySql_pw、BAK_Dir、Bak_Time_ago、RAR_Dir的值    ┃echo. ┃ ::本脚本调用了临时VBS代码进行日期计算                             ┃echo. ┃ ::本脚本为兼容不同的日期格式,调用reg命令,统一设置日期格式        ┃echo. ┃ ::本脚本自动生成数据库.sql脚本,并自动压缩为.rar文件              ┃echo. ┃ ::本脚本自动生成日志文件在x:xxxx000-00-00MY_DBBAK.log         ┃echo. ┃ ::本脚本数据库备份路径为x:xxxx000-00-00数据库名_0000-00-00.rar┃echo. ┃ ::本脚本如果想放在windows计划任务里执行,请去掉脚本里的所有pause   ┃echo. ┃ ::因每个服务器的Mysql环境不一样,备份的核心语句自行更改            ┃echo. ┃ ::本脚本没有版权,可以任意改为自己想要的效果,转载请勿删除该注释语句┃echo. ┃                                          By REKFAN 2011-10-14     ┃echo. ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡echo.if not defined MySql_pw (echo MySql_pw 尚未定义!)if not defined BAK_Dir (echo BAK_Dir 尚未定义!)if not defined Bak_Time_ago (echo Bak_Time_ago 尚未定义!)if not defined RAR_Dir (echo RAR_Dir 尚未定义!):: 取得当前计算机时间,以 yyyy-MM-dd 格式显示for /f "skip=2 delims=" %%a in ('reg query "HKEY_CURRENT_USERControl PanelInternational" /v sShortDate') do (SET RegDateOld=%%a)SET RegDateOld=%RegDateOld:~-8%::通过改变注册表改变计算机的日期格式reg add "HKEY_CURRENT_USERControl PanelInternational" /v sShortDate /t REG_SZ /d yyyy-M-d /f>nul>"%temp%DstDate.vbs" echo LastDate=date()-%Bak_Time_ago%>>"%temp%DstDate.vbs" echo FmtDate=right(year(LastDate),4) ^& right("0" ^& month(LastDate),2) ^& right("0" ^& day(LastDate),2)>>"%temp%DstDate.vbs" echo wscript.echo FmtDatefor /f %%a in ('cscript /nologo "%temp%DstDate.vbs"') do (SET DstDate=%%a)::删除指定时间前的备份SETlocal enabledelayedexpansionecho. 删除 %BAK_Dir2%〔%Bak_Time_ago%〕天前的备份文件for /f "delims= " %%i in ('dir /ad/b %BAK_Dir%????-??-??') do (SET t1=%%iSET t2=!t1:~0,4!!t1:~5,2!!t1:~8,2!if /i !t2! leq %DstDate% (DEL /F /A /Q \?%BAK_Dir%!t1!*.*rd /q /s \?%BAK_Dir%!t1!echo. 备份文件夹%BAK_Dir%!t1!删除完成!)):: 还原计算机注册表的日期格式reg add "HKEY_CURRENT_USERControl PanelInternational" /v sShortDate /t REG_SZ /d %RegDateOld% /f>nulecho. echo. 开始以当前日期创建文件夹if not exist %BAK_Dir%%BAK_Dir2% md %BAK_Dir%%BAK_Dir2%cd /d %BAK_Dir%%BAK_Dir2%echo. 开始建立今天(%BAK_Dir2%)的备份:: 记录时间日志echo 备份时间:%BAK_Dir2% %time:~0,8%  >> %LOG_FILE%echo /++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >> %LOG_FILE%:: 备份的核心代码if not defined BAK_db_myisam (goto innodb)SetLocal DisableDelayedExpansionfor %%i in (%BAK_db_myisam%) do (mysqldump -hlocalhost -uroot -p%MySql_pw% --default-character-set=GB2312 -R --triggers --hex-blob -x %%i >%BAK_FILE%rem 以上的参数根据自己的需求更改,部分参数方法请看 http://blog.rekfan.com/?p=57%RAR_Dir% a %BAK_FILE:~0,-4%.rar %BAK_FILE%DEL /F /A /Q %BAK_FILE%echo 数据库【%%i】 已经备份到%BAK_Dir%%BAK_Dir2%%BAK_FILE%.rar >> %LOG_FILE%):innodbif not defined BAK_db_innodb (goto exitbat)echo. 开始以当前日期创建文件夹if not exist %BAK_Dir%%BAK_Dir2% md %BAK_Dir%%BAK_Dir2%cd /d %BAK_Dir%%BAK_Dir2%echo. 开始建立今天(%BAK_Dir2%)的备份SetLocal DisableDelayedExpansionfor %%i in (%BAK_db_innodb%) do (mysqldump -hlocalhost -uroot -p%MySql_pw% --default-character-set=GB2312 -R --triggers --hex-blob --single-transaction -B %%i >%BAK_FILE% %RAR_Dir% a %BAK_FILE:~0,-4%.rar %BAK_FILE%DEL /F /A /Q %BAK_FILE%echo 数据库【%%i】 已经备份到%BAK_Dir%%BAK_Dir2%%BAK_FILE%.rar >> %LOG_FILE%):exitbatecho ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++/ >> %LOG_FILE%echo. 所有备份建立完毕:: 清除变量        SET MySql_pw=        SET BAK_Dir=        SET Bak_Time_ago=        SET RAR_Dir=        SET BAK_Dir2=        SET BAK_FILE=        SET LOG_FILE=

 

 

 

处理过程时的鼠标显示 -VB资料 窗口处理技巧大全 -VB资料 窗口事件的发生顺序-VB资料 VB创建不规则窗口 VB创建透明窗体 VB创建位图菜单 VB创建无 Icon 的窗口 打开 Win95 的创建快捷方式窗口-VB资料 打印机技巧 -VB资料 带有历史记录功能的菜单-VB资料 得知目前Mouse所指的Menu Item是哪一个-VB资料 调整 Combo 下拉部分的宽度 -VB资料 对象是使用 TAB 键还是鼠标激活的 -VB资料 防止用户编辑文本框控件中的内容-VB资料 改变 ListIndex而不发生 Click 事件 -VB资料 改变 TreeView 的背景 -VB资料 改变安装向导的背景色-VB资料 改变按钮的文本颜色-VB资料 功能强大的增强列表框 ――VB6控件LISTVIEW使用指南 关闭MDI窗体中所有的子窗体-VB资料 规范设计Windows应用软件菜单-VB资料 VB建立可滚动的视区 -VB资料 VB建立可下拉选择的属性 -VB资料 VB建立无模式窗口 -VB资料 将VB5中的ToolBar变成平面的 将程序从任务列表中隐藏 -VB资料 将我自已的命令加入窗体的控制菜单栏-VB资料 VB利用 UnloadMode 来控制窗体的卸载? VB利用Form_QueryUnload询问使用者是否关闭窗口 利用VB的图片框实现屏幕的滚动 利用VB动态改变Windows显示模式的两种方法 我是初者:照顾一下--Web编程具体指的是什么? 谁会装双启动!帮帮忙呀 求cuteFTP3.0注册码 请问大家,为什么TC图形库中,使用异或技术(setwritemode(XOR)),在相同地方画两次相同的圆却无法将圆擦去呢? 请问javascipt中的框架的 top 指什么? 纯属题外话! ipc连接与telnet的区别? 明天我要去考研,所以要早睡! 世界著名病毒编写组织和成员介绍,包括大名鼎鼎的29A(希望反病毒厂商能给他们发感谢信!) 各位,请问哪里有在winxp下查看拨号上网密码的软件? 请问到底是xp好还是2000好?或者xp有什么缺点(硬件要求高不算)谢谢! 求VSS6.0C下载 大家觉得:女孩子身高多高最合适? 我想写:select * from talbe where name like '杨%',写到adoquery1.SQL.Text后面怎么写阿?那些''''搞得我昏了,哪个好人来讲讲? 微软出版的《SQL Server2000技术内幕》这套书怎么样,看过的来讲一下啊 c#好还是bcb好?会不会淘汰bcb呀? 讨论!!!大家帮我想想!这样会不会是访问该站点的所有人只用一个SQL线程呢??? 如何在PB下实现Windows风格的标准按钮栏?请高手帮忙,十分感谢! 读DBF中被删除的记录 在div里如何加水平线 Web Service是这样慢吗? FreeBSD下C++语言工程文件的编译问题 此贴开给“zzheaptech(风的往事)”接分,感谢热心的朋友们,向你们致敬! 大家进来给个建义 谁能告诉我资源文件的语法,或者有好的关于C和C++的好网站!谢谢!!! 如何计算当天的时间差值? 这个SQL语句错在哪了? 小弟有四个三角了,放分 都说php用word很简单!!我怎么从来没成功过!!!!?? 不能反问表是什么原因 请问在局域网内的电脑怎么样象电信拨号服务器那样,使之设置成为可以提供拨号服务的主机? 高分求答 文字型简易电子计算器设计 又一个delphi处女作!下载照样送分!提了改进方法的送高分! 菜鸟问题!谁能详细叙述一下,如何将编译过后的exe文件中的数据库正常的链接使用! 大家帮我看看我打印机的问题。 请问怎么设置使局域网内的电脑能象电信那样成为可以提供拨号上局域网服务的主机? 简单的问题.关于MFC命名规则: 老实说,是不是mysql驱动有bug,或者是java.sql.ResultSet类有bug?? 关于QQ的问题,请各位帮帮忙。谢谢! 很简单的问题,JB中用JDBC连接SQL2000怎么不行? sql总是不正解,请看看! 请教各位大侠两个困扰很久的两个问题!!! 高分求救疑难,200分相赠,急!!! 在XP中,无法从右击我的电脑>>管理,进行共享文件或文件夹的设置,急!!! 如何对同时对两个表(一对多关系)进行保存操作? 请问vc能否导入vb作得一些东西,如界面之类得。 在线求解! 如何在客户端用Java检测Radio组的那一个值被选中,在线等待, asp.net高级编程打印中 有没有人能提供点主页空间? 請問Driver跟Firmware有怎樣的分別呢? 蛇精谢娜PK范冰冰 鬼马天后PK女神《泰囧》带火旅游 徐峥获泰国总理接见张国荣惊世讯息将曝光 揭秘“哥哥”情刘欢22岁女儿大量私房照曝光(组图)刘欢女儿近照曝光 盘点娱乐圈明星的漂刘欢女儿近照曝光 明星漂亮女儿美艳比赵薇刘涛李湘黄磊维多利亚明星儿女萌照大S小S王菲赵薇范冰冰揭秘大牌明星的曝刘欢22岁女儿私房照袁姗姗戚薇李小璐刘诗诗揭秘女星整容部刘欢王刚吴宗宪 男星漂亮女儿照片盘点王大治被曝暗恋苗圃20年 娱乐圈痴情董洁潘粤明婚变成定局 揭秘两人七年情章子怡跻身全球50美 盘点老外眼中的39岁张美妮搭上59岁曾志伟 个人资大S小S王菲赵薇范冰冰 揭大牌明星的大S小S王菲赵薇范冰冰 揭大牌明星的TVB男星白健恩疑似卖淫开价5.5万女子遭强奸劝带套获证据 为取证女子遭传董洁十年前被富商包养 伊能静阿娇张台湾老牌主持人徐风去世 盘点因癌症去长途车站频演“调包计”笔记本电脑转眼网店售价跌破630元,五粮液“限价令日蚀天象朝鲜海军数十官兵执行任务时身亡2014年春联行动开始征集春联作品中国人寿杯“保险在身边关爱一生”征文9000余个就业见习岗位等你报名“珠宝”沙龙让人着迷石家庄九中开展礼仪教育“大史”跨栏迎娶新娘黄金走势难言乐观巴塔“智者”遭美无人机袭击毙命龙袍流拍率达50%你会遭遇企业法律危机吗?橄榄核雕把玩中升值邯郸:车辆限行,市民多了一份理解“黄金树”下黄金矿戏曲音乐伴奏新模式明起在梅剧院展示李克强:改革要敢于打破固有利益格局法国两名记者在马里惨遭撕票出钱就是爷?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘