如何使用mysqldump从命令提示符添加备份文件名的日期和时间,并定义backupfile的路径

时间:2013-07-25 09:17:05

标签: mysql mysqldump

我使用此命令从mysqldump

进行备份

mysqldump -uroot -ptrackerdb) - alldatabases> test.sql

现在我想用我的备份文件添加日期时间,例如当前日期和时间,例如test_25July2013_13:00

为此,我在文件名中添加了测试_ date +%Y-%m-%d_%H-%M-%S。sql,但它提供了错误

'找不到表':日期+%Y-%m-%d_%H-%M-%S`

我在这里做错了什么?

3 个答案:

答案 0 :(得分:15)

我正在使用它:

LINUX

mysqldump -u <user> -p <database> | bzip2 -c > <backup>$(date +%Y-%m-%d-%H.%M.%S).sql.bz2

WINDOWS(谷歌搜索,因为我一直只使用LIN)

@echo off
cls
echo Date format = %date%
echo dd = %date:~0,2%
echo mm = %date:~3,2%
echo yyyy = %date:~6,4%
echo.
echo Time format = %time%
echo hh = %time:~0,2%
echo mm = %time:~3,2%
echo ss = %time:~6,2%
echo.
echo Timestamp = %date:~6,4%-%date:~3,2%-%date:~0,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%

%mysqldir%\mysqldump -u %mysqluser% -p%mysqlpassword% -h %mysqlhost% -P %mysqlport% --databases --routines --verbose gnucash_shockwave > %BackupDir%\gnucash_shockwave-%timestamp%.sql

here more info

答案 1 :(得分:1)

Microsoft Windows 中,在CMD中运行以下命令

mysqldump -u USERNAME -pYOURPASSWORD --all-databases > "C:/mysql_backup_%date:~-10,2%-%date:~-7,2%-%date:~-4,4%-%time:~0,2%_%time:~3,2%_%time:~6,2%.sql"

输出文件看起来像,

  

mysql_backup_21-02-2015-13_07_18.sql

如果要自动执行备份过程,则可以使用Windows任务计划程序,并将上面的命令放在.bat文件中 - 任务计划程序将以指定的时间间隔运行.bat文件。

答案 2 :(得分:0)

  

mysqldump -u数据库用户名--password =数据库密码   --all-databases | gzip> / home / username / MySQLDBBK $(date +%Y_%m_%d __%H_%M_%S $ %M %S).sql.gz

此命令正常工作。