2019独角兽企业重金招聘Python工程师标准>>>

需求:
有一台windows服务器上跑着mysql的一些应用,现在需要将mysql的数据每天备份,并通过ftp上传到指定的存储服务器上
要是在linux上,shell 脚本很容易就搞定了,在windows上习惯了点鼠标,哪里来的脚本,一时还真不知道该怎么弄.baidu,google得知可以通过批处理或者vbs脚本实现.
批处理是比较简单的,毕竟dos的常用命令还是知道的
解决思路:
使用批处理文件,实现备份和上传的功能
将批处理文件加到计划任务中实现每日定时执行脚本
完整的批处理文件如下 文件名dbbk.bat
@echo off
:: this batch is to backup the db files on windows to linux server
:: created by yahoon
:: 2008.4.9::backup the mysql db
mysqldump -uroot –pxxxx demo>c:\demo %date:~0,10%.sql::pause
:: wait press any key to continue
:: ready to delete::form the ftp command file
echo open 服务器ip>c:\ftpdemo.txt
echo ftp用户名>>c:\ftpdemo.txt
echo ftp密码>>c:\ftpdemo.txt
echo put c:\ demo %date:~0,10%.sql >>c:\ftpdemo.txt
echo bye>>c:\ftpdemo.txt::transfer the file to server via ftp
ftp -i -s:c:\ftpdemo.txt::pause::clean the tmp files
del c:\ftpdemo.txt
del c:\ demo %date:~0,10%.sql
说明:
1. 双冒号::后面的内容为注释,不会执行
2. 两处pause语句是调试的时候用的,运行pause的结果是屏幕上显示”按任意键继续”,脚本等着用户按键才会往下执行
3. demo %date:~0,10%.sql 是备份的文件名,最后的结果是demo20080409.sql ,其中%date:~0,10%表示的是date命令输出的字符串中从第0个开始的10个字符.这点很重要,因为我在英文的OS上,执行这个脚本在备份的时候报文件名错误.这是因为当你执行date命令的时候结果是
Tue 04/08/2008
要达到demo20080409.sql这样的效果文件名就要这么写demo%date:~10,4%%date:~4,2%%date:~7,2%.sql
最后提一下写的过程中解决的一个问题
由于脚本的思路是做备份,然后通过ftp上传
所以最开始写的时候没有::form the ftp command file 这一段.而是写好一个ftpdemo.txt放在那
这就出现了一个问题,由于生成的sql文件名每天都变,这样ftp命令也得改.写死的ftpdemo.txt文件肯定就实现不了.
想出了个笨主意是批处理文件里面生成的sql文件就定义死文件名为demo.sql,这样ftpdemo.txt文件也可以写死.然后等上传以后,再通过linux的脚本通过crontab来每天改名.

转载于:https://my.oschina.net/lenglingx/blog/391711

使用批处理实现mysql数据库备份与上传相关推荐

  1. mysql定时备份并上传ftp_Linux下定时任务实现mysql自动备份并上传远程ftp

    Linux下定时任务实现mysql自动备份并上传远程ftp 1.创建保存备份文件的目录:/home/mysql_data cd /home mkdir mysql_data 2.创建备份脚本文件:/h ...

  2. mysql远程定时任务_Linux下定时任务实现mysql自动备份并上传远程ftp

    Linux下定时任务实现mysql自动备份并上传远程ftp 1.创建保存备份文件的目录:/home/mysql_data cd /home mkdir mysql_data 2.创建备份脚本文件:/h ...

  3. mysql数据库备份到oss_备份数据库并上传至阿里云OSS

    下载OSS工具ossutil wget http://gosspublic.alicdn.com/ossutil/1.5.0/ossutil64 #下载ossutil chmod 755 ossuti ...

  4. mysql如何上传照片_MySQL数据库之图片上传存储数据库的2种方法讲解(Mysql)

    本文主要向大家介绍了MySQL数据库之图片上传存储数据库的2种方法讲解(Mysql) ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 数据库Mysql存储,读取图片 在项目中,很 ...

  5. linux 备份mysql并上传_实现Linux中Mysql数据库自动备份并上传到远程FTP服务器

    这篇文章很有分享价值,因为我们在实际的生产环境中需要将数据库进行自动备份,然后上传到指定的位置,当然也可以像以下文章中所讲的一样,上传到你指定的FTP服务器中,从而实现Mysql数据库自动备份并上传到 ...

  6. MySQL Study之--Mysql数据库备份工具(mysqldump)

    MySQL Study之--Mysql数据库备份工具(mysqldump) 对于Mysql Database的备份方式有很多种,此次文档主要介绍mysqldump工具: mysqldump:     ...

  7. javaweb实现mysql备份功能_java web 实现mysql 数据库备份、恢复

    如题,由于项目需要,研究并实现了java web的 mysql数据库的备份.下载.恢复功能,中间遇到一些问题,耗费了不少时间,下面让我一一道来: 背景介绍: window 7系统 mysql 5.7 ...

  8. mysql用户管理,常用sql语句,mysql数据库备份恢复

    2019独角兽企业重金招聘Python工程师标准>>> mysql用户管理 grant all on . to 'user1' identified by 'passwd'; gra ...

  9. MySQL数据库备份命令

    原文参考:MySQL数据库备份的命令 - 司南 mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql ...

最新文章

  1. 版本变迁_文科生学电脑 - git和版本控制(一)
  2. 在新基建风口上,华为“鲲鹏”这次要翱翔了
  3. java关闭inputstream_关闭Java InputStreams
  4. suse linux标准c安装,suse linux安装cmake时ccmake没有安装上的原因
  5. struts2+kindeditor4.0.5的上传图片的实现
  6. shell 学习笔记(四)
  7. 如何在excel 单元格中增加换行
  8. Insert Node in Sorted Linked List
  9. font-family 各字体一览表
  10. poi数据导入arcgis_在Excel中处理和使用地理空间数据(如POI数据)
  11. 隐藏在Windows XP中的28个秘密武器
  12. 经典Ubuntu20.04版本U盘安装双系统教程
  13. 微机原理与接口技术期末考试总结
  14. java 字体变形_字符串变形-Java
  15. v4l2框架—申请缓存(VIDIOC_REQBUFS)
  16. 网络安全之日志服务器的建立
  17. 实验三 XSS和SQL注入
  18. PostgreSQL学习篇9.3 浮点数类型
  19. PostgreSQL的psql中的AutoCommit
  20. va和tn玩游戏哪个好 va和tn哪个伤眼睛

热门文章

  1. outlook 2010 记忆式键入不工作的解决办法
  2. 从一起丢包故障来谈谈 nginx 中的 tcp keep-alive
  3. [Contest20180316]Mythological IV
  4. 所谓的创业分享,都是一堆骗人骗己的谎言?
  5. c语言时间库函数#includetime.h
  6. 100c之50:到底谁在说谎
  7. Oracle 11g密码过期问题解决方案
  8. 重新挂载linux分区添加硬盘
  9. 第六回严重鄙视360安全卫士
  10. [导入]圣诞快乐,快乐圣诞。。。。。。