批处理一键备份sqlserver数据库

复制代码
@echo off

set "server_name=."
set "database_name=MyDB"
set "backup_path=D:\test"

REM 获取当前日期和时间
set dt=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%

echo 正在备份数据库 %database_name% 到 %backup_path%...

sqlcmd -S %server_name% -Q "BACKUP DATABASE [%database_name%] TO DISK = N'%backup_path%\%database_name%_%dt%.bak' WITH INIT, FORMAT"

if %errorlevel% neq 0 (
    echo 备份过程中发生错误。
) else (
    echo 数据库备份已完成。
)

pause
复制代码

 以下是备份并通过winrar自动压缩成rar文件的:

复制代码
@echo off

set "server_name=."
set "database_name=MyDB"
set "backup_path=D:\test"

REM 获取当前日期和时间
set dt=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%

echo 正在备份数据库 %database_name% 到 %backup_path%...

sqlcmd -S %server_name% -Q "BACKUP DATABASE [%database_name%] TO DISK = N'%backup_path%\%database_name%_%dt%.bak' WITH INIT, FORMAT"

if %errorlevel% neq 0 (
    echo 备份过程中发生错误。
) else (
    echo 数据库备份已完成。
    
    REM 使用 WinRAR 压缩备份文件
    "C:\Program Files\WinRAR\WinRAR.exe" a -r "%backup_path%\%database_name%_%dt%.rar" "%backup_path%\%database_name%_%dt%.bak"
    
    REM 删除源文件
    del "%backup_path%\%database_name%_%dt%.bak"
    
    echo 备份文件已压缩并源文件已删除。
)

pause
复制代码

 

posted on   空明流光  阅读(225)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2022-06-30 asp.net webform 动态调试技巧
2020-06-30 标准C++项目集成或调用qt项目配置 ( Visual Studio 2017 )

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示