mysqldump的”不被识别为一个内部或外部命令可操作的程序或批处理文件

问题描述:

我一直在尝试使用任务调度程序创建一个批处理来备份MySQL数据库..mysqldump的”不被识别为一个内部或外部命令可操作的程序或批处理文件

FOR /F "tokens=1-4 DELIMS=/ " %%F IN ('date /T') DO (set v_date=%%F%%G%%H) 
FOR /F "tokens=1-4 DELIMS=: " %%F IN ('time /T') DO (set v_time=%%F%%G%%H) 
set fname=database_backup_%v_date%_%v_time%.sql  
echo %v_time% 
echo %fname% 
set desfolder=C:\backup 
set desfolder1=D:\backup 
echo %desfolder% 
echo %desfolder1% 

mysqldump --add-drop-table -u root -pxxxx xxxx>%desfolder%\%fname% 
mysqldump --add-drop-table -u root -pxxxx xxxx>%desfolder1%\%fname% 
pause 

这个特殊的代码为XP运行良好但即将到Windows任务调度时,我得到了以下错误:

mysqldump' is not recognized as an internal or external command operable program or batch file

,但如果操作它手动,它工作正常

你在路上有没有mysqldump?

要么

  1. 它添加到路径,请参阅http://dev.mysql.com/doc/mysql-windows-excerpt/5.1/en/mysql-installation-windows-path.html

  2. 添加的完整路径,以在脚本中mysqldump的

+0

谢谢回复马塞尔,但我已经放在批处理文件在ProgramFile \ Mysql \ bin – user3531533 2014-12-07 11:55:06

+0

啊,尝试使用短路径代替。 c:/ PROGRA〜1/mysql/bin – 2014-12-07 11:58:01

+0

我认为它与位置无关,因为它对于windows xp甚至对于某些窗口来说工作正常,而有些系统正在创建备份文件,但是它是空的。但是,如果我们双击它那里它自我工作正常。不知道为什么它不与任务调度程序一起工作 – user3531533 2014-12-07 12:02:08