找回密码
 注册
搜索
查看: 2480|回复: 1

mysqldump备份成sql文件

[复制链接]
发表于 2017-1-22 18:16:46 | 显示全部楼层 |阅读模式
假想环境:
MySQL   安装位置:C:\MySQL
论坛数据库名称为:bbs
MySQL root   密码:123456
数据库备份目的地:D:\db_backup\

脚本:


  1. rem *******************************Code Start*****************************
  2. @echo off
  3. set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
  4. C:\MySQL\bin\mysqldump --opt -u root --password=123456 bbs > D:\db_backup\bbs_%Ymd%.sql
  5. @echo on
  6. rem *******************************Code End*****************************
复制代码

将以上代码保存为backup_db.bat
然后使用Windows的“计划任务”定时执行该脚本即可。(例如:每天凌晨5点执行back_db.bat)
说明:此方法可以不用关闭数据库,并且可以按每一天的时间来名称备份文件。
通过%date:~5,2%来组合得出当前日期,组合的效果为yyyymmdd,date命令得到的日期格式默认为yyyy-mm-dd(如果不是此格式可以通过pause命令来暂停命令行窗口看通过%date:~,20%得到的当前计算机日期格式),所以通过%date:~5,2%即可得到日期中的第五个字符开始的两个字符,例如今天为2009-02-05,通过%date:~5,2%则可以得到02。(日期的字符串的下标是从0开始的)

发表于 2020-3-12 16:25:34 | 显示全部楼层
本帖最后由 光头大叔 于 2020-3-13 17:07 编辑

这个文件命名成功。。。牛
很多人都可能碰到过这样的问题:在我们用DOS命令行备份、导出MySQL数据库的时候输入mysqldump语句mysqldump -h localhost -u root -p shopdb >d:\beifen\shopdbbak.sql回车时命令行窗口会提示如下错误:

        mysqldump: unknown option '--no-beep'

        以致数据库备份无法完成。这是什么原因呢? 经过反复查找问题终于找到了出错的原因:原来是mysqldump读取mysql安装文件my.cnf里的内容的默认设置,导致命令行无法正常运行,知道了这个原因那解决方法也就有了,禁用默认设置!在执行mysqldump的时候加入选项--no-defaults (官方文档解释是Do not read default options from any options file),所以最后的备份语句改成如下:
        mysqldump --no-defaults -h localhost -u root -p shopdb >d:\beifen\shopdbbak.sql
回车,输入密码,命令执行成功,备份成功了!打开d:\beifen\能看到导出来的备份文件shopdbbak.sql
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2025-5-5 00:09 , Processed in 0.020488 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表