在mysqldump中输入文件路径和日期时出现的错误如何解决?

Posted

技术标签:

【中文标题】在mysqldump中输入文件路径和日期时出现的错误如何解决?【英文标题】:How do I fix the error that occurs when I enter the file path and date in mysqldump? 【发布时间】:2021-12-05 23:36:55 【问题描述】:

我在cmd中运行mysqldump命令如下:

set _my_datetime=%date:-=%

mysqldump -u root -p --all-databases -pMyPassword > C:\Program Files\MariaDB 10.4\data\backup\%_my_datetime%.sql

但结果是:

Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help

不知如何在Windows服务器环境下修改上述命令。

【问题讨论】:

嗨@ringhiosi,我的回答对你的情况有用吗?您需要我的进一步帮助吗? 【参考方案1】:

因为%date:-=% 将被评估为Tue 10/19/2021,并且此日期分隔符正斜杠/mysqldump 命令中使用的路径冲突。

C:\xampp\mysql\bin>set _my_datetime=%date:-=%

C:\xampp\mysql\bin>echo %_my_datetime%
Tue 10/19/2021
C:\Program Files\MariaDB 10.4\data\backup\%_my_datetime%.sql
=> Will be: C:\Program Files\MariaDB 10.4\data\backup\Tue 10/19/2021.sql

这是不正确的 Windows 路径语法,在您的情况下会引发通用语法异常。

解决方案 想办法将日期格式设置为破折号- 或下划线_

你可以简单地使用

mysqldump -u root -p --all-databases -pMyPassword > "C:\Program Files\MariaDB 10.4\data\backup\mysql_backup_%date:~-10,2%-%date:~-7,2%-%date:~-4,4%-%time:~0,2%_%time:~3,2%_%time:~6,2%.sql"

将给出一个文件名模式:mysql_backup_10-19-2021-10_08_12.sql

Windows 命令行中的日期格式可能会令人不快。

参考:how to add date and time with backupfile name using mysqldump from command prompt and to define the path of backupfileFormat date and time in a Windows batch script

【讨论】:

以上是关于在mysqldump中输入文件路径和日期时出现的错误如何解决?的主要内容,如果未能解决你的问题,请参考以下文章

apache2.4 启动时出现的问题

修复SQL2000数据库置疑时出现的错误

增加输入框的宽度?删除单击按钮或输入框时出现的黑色轮廓?

Spring Boot怎么处理上传文件时出现的MultipartException

输入字段未返回预期值[重复]

nodejs配置之二NPM配置之gulp使用时出现的错误