标题: [文本处理] [已解决]批处理如何备份MySQL数据库并生成带日期格式的文件? [打印本页]
作者: lazygc520 时间: 2012-2-4 16:01 标题: [已解决]批处理如何备份MySQL数据库并生成带日期格式的文件?
数据库的备份生成命令为:
C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqldump -u 用户名 -p 数据库名>cvtbarcode日期格式.sql
能否生成一个带日期格式的批处理?
日期形式:yyyymmdd
作者: lvsehuaxue 时间: 2012-2-4 19:07
win7的情况下,按你所说的方式获取日期。- @echo off
- set str=%date:/=%
- echo %str:~,8%
- pause
复制代码
作者: lazygc520 时间: 2012-2-6 08:35
额,我是想问这个备份的批处理如何写?
正常的执行操作是
C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqldump -u 用户名 -p 数据库名>cvtbarcode日期格式.sql
然后系统提示输入数据库密码。
如果要指定存放路径,这个批处理改如何写?
作者: lazygc520 时间: 2012-2-6 12:00
日期操作我已获得,请问在C:\Program Files\MySQL\MySQL Server 5.1\bin路径下执行命令的批处理怎么写?系统会提示输入数据库密码。这个是怎么操作?
作者: lazygc520 时间: 2012-2-6 12:11
- @echo off
- >"%tmp%\MyDel.vbs" echo dt=date()-1
- >>"%tmp%\MyDel.vbs" echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2)
- >>"%tmp%\MyDel.vbs" echo wscript.echo s
- for /f %%a in ('cscript /nologo "%tmp%\MyDel.vbs"') do set yesterday=%%a
- echo %yesterday%
- >CD C:\Program Files\MySQL\MySQL Server 5.1\bin\
- >>mysqldump -u root -p test>"E:\software install\testDatabaseBackup\cvtbarcode%yesterday%test.sql"
- pause
复制代码
提示有错误,怎么修改?如果系统提示密码,怎么在批处理程序里添加?
作者: find 时间: 2012-2-6 21:26
回复 5# lazygc520
详细的报错信息是什么?
作者: lazygc520 时间: 2012-2-7 08:09
回复 6# find - 20120206
- 'C:\Program' 不是内部或外部命令,也不是可运行的程序
- 或批处理文件。
- '-u' 不是内部或外部命令,也不是可运行的程序
- 或批处理文件。
- 请按任意键继续. . .
复制代码
作者: Demon 时间: 2012-2-7 09:32
本帖最后由 Demon 于 2012-2-7 09:33 编辑
- @echo off
- >"%tmp%\MyDel.vbs" echo dt=date()-1
- >>"%tmp%\MyDel.vbs" echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2)
- >>"%tmp%\MyDel.vbs" echo wscript.echo s
- for /f %%a in ('cscript /nologo "%tmp%\MyDel.vbs"') do set yesterday=%%a
- echo %yesterday%
- >CD C:\Program Files\MySQL\MySQL Server 5.1\bin\
- >>mysqldump -u root -p test>"E:\software install\testDatabaseBackup\cvtbarcode%yesterday%test.sql"
- pause
复制代码
提示有错误,怎么修改?如果系统提示密码,怎么在批处理程序里添加?
lazygc520 发表于 2012-2-6 12:11
不伦不类
'Author: Demon
'Website: http://demon.tw
'Date: 2012/2/7
Option Explicit
Const user = "root"
Const pass = "123456"
Const data = "test"
Const dump = "C:\Program Files\MySQL\MySQL Server 5.1\bin\"
Const dest = "E:\software install\testDatabaseBackup\"
Dim yesterday, t
t = Date - 1
yesterday = Year(t) & Right("0" & Month(t), 2) & Right("0" & Day(t), 2)
yesterday = dest & "cvtbarcode" & yesterday & ".sql"
Dim WshShell, Cmd
Set WshShell = CreateObject("wscript.Shell")
WshShell.CurrentDirectory = dump
Cmd = "mysqldump -u " & user & " -p" & pass & " -r " & yesterday & " " & data
WshShell.Run Cmd, 0, True
MsgBox "Backup complete", vbInformation
作者: find 时间: 2012-3-2 21:01
回复 7# lazygc520 - @echo off
- rem 设置MySQL用户名
- set username=MYUSER
- rem 设置MySQL密码
- set password=MYPASS
- >"%tmp%\MyDel.vbs" echo dt=date()-1
- >>"%tmp%\MyDel.vbs" echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2)
- >>"%tmp%\MyDel.vbs" echo wscript.echo s
- for /f %%a in ('cscript /nologo "%tmp%\MyDel.vbs"') do set yesterday=%%a
- echo %yesterday%
- cd /d "C:\Program Files\MySQL\MySQL Server 5.1\bin\"
- mysqldump -u%username% -p%password% <"E:\software install\testDatabaseBackup\cvtbarcode%yesterday%test.sql"
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |