mysqldump - 用户拒绝访问

Her*_*der 3 mysql command-line mysqldump

当我从打开的Windows命令shell(Win7)运行以下命令时,它工作正常,并将备份写入我的文件系统.MySQL数据库位于远程Linux服务器上.

"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump" -h *******.com -u ******* -p***** --databases ******* > "C:\******\_Database\backups\DB_%date:~0,3%.bak"
Run Code Online (Sandbox Code Playgroud)

但是当我将相同的命令放入批处理文件(whatever.bat)并运行bat文件(最后使用"pause"命令)时,我收到错误"得到错误:1045:拒绝访问用户' ' @'c-24-2-64-138.hsd1.ut.comcast.net'(使用密码:YES)尝试连接时".

为什么它在open命令shell中起作用,但在从bat文件运行时却不起作用?我怎样才能做到这一点?

tak*_*hin 6

您应该使用单引号转义密码:-p'password'.

正确的命令是:

"mysqldump" -h *******.com -u ******* -p'*****' --databases ******* > "C:\******\_Database\backups\DB_%date:~0,3%.bak"
Run Code Online (Sandbox Code Playgroud)