[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] mysql备份执行错误

echo off
@echo step.1:通过获取当前时间来构建要创建的文件名
set dst=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
@echo step.2:检查backup文件夹是否存在,如果不存在则创建
if exist D:\temp\backup goto start
md d:\temp\backup
:start
@echo step.3:检查要创建的文件是否存在,如果存在则删除
if exist D:\temp\backup\%dst%.text del D:\temp\backup\%dst%.text /y
@echo step.4:备份数据库
mysqldump -untdba -pntdba --database zwkj > D:\temp\backup\%dst%.text
@echo finish:数据库备份完成

以上代码执行后,可以备份数据库,但提示以下信息
mysqldump: Got error: 1102: Incorrect database name '81644.text' when selecting
the database

麻烦高手们看看。

把运行结果截图上来看看:
  1. @echo off
  2. echo step.1:通过获取当前时间来构建要创建的文件名
  3. set dst=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
  4. echo %dst%
  5. echo step.2:检查backup文件夹是否存在,如果不存在则创建
  6. if exist "D:\temp\backup" goto start
  7. md "d:\temp\backup"
  8. :start
  9. echo step.3:检查要创建的文件是否存在,如果存在则删除
  10. if exist "D:\temp\backup\%dst%.text" del "D:\temp\backup\%dst%.text" /y
  11. echo step.4:备份数据库
  12. mysqldump -untdba -pntdba --database zwkj>"D:\temp\backup\%dst%.text"
  13. echo finish:数据库备份完成
  14. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

@echo off
echo step.1:通过获取当前时间来构建要创建的文件名
set dst=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
echo %dst%
echo step.2:检查backup文件夹是否存在,如果不存在则创建
if exist "D:\temp\backup" goto start
md "d:\temp\backup"
:start
echo step.3:检查要创建的文件是否存在,如果存在则删除
if exist "D:\temp\backup\%dst%.text" del "D:\temp\backup\%dst%.text" /y
echo step.4:备份数据库
mysqldump -untdba -pntdba --database zwkj>"D:\temp\backup\%dst%.text"
echo finish:数据库备份完成
pause

这样就好了。

TOP

为什么去掉@就好了,这是什么原因啊?

TOP

原因不在于去掉@,而是路径加了双引号。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

还有一个问题,同样的批处理,为什么我在XP系统中,备份的文件名为20080828145747.text。在WIN2000 SERVER系统中,备份文件名为星期四.text

TOP

set dst=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
因为不同的系统,日期时间的格式也可能不同,直接这样截取系统变量很可能出问题,可以参考一下这个帖子:

批处理标准化获取当前系统日期
http://www.cn-dos.net/forum/viewthread.php?tid=41857
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表