当前位置:Gxlcms > 数据库问题 > sql server 2008 自动备份(非维护计划)

sql server 2008 自动备份(非维护计划)

时间:2021-07-01 10:21:17 帮助过:9人阅读

@backupTime VARCHAR(20)  

DECLARE   

@fileName VARCHAR(1000)    

SELECT  

 @backupTime=(CONVERT(VARCHAR(8), GETDATE(), 112) +REPLACE(CONVERT(VARCHAR(5), GETDATE(), 114), ‘:‘, ‘‘))    

SELECT  

 @fileName=‘F:\Database_Backup\DB_‘+@backupTime+‘.bak‘  

backup database DBName to disk=@fileName  

 

DBName就是你的数据库的名称了,备份的文件名形如 DB_201302252140.bak。

2、写一个批处理文件,执行此sql脚本。 例如:backup_database.bat ,我们也把它放在 F:\Database_Backup下。
  1. sqlcmd -S . -i F:\Database_Backup\backup.sql  
3、新建一个Windows计划任务,定期(比如每天)执行此批处理命令。 选择管理工具里的“计划任务” 技术分享图片 选择“创建基本任务” 技术分享图片 输入任务名称和描述 技术分享图片 选择执行时间 技术分享图片 选择操作为“启动程序” 技术分享图片 这里的程序或脚本就选择我们建好的 backup_database.bat 技术分享图片

          最后确定即可。

      至于删除过期的备份文件,我们也可以通过任务计划来完成。forfiles命令,可以实现批量删除文件,用法可以自行百度。我们写一个批处理文件delete_bakFile.bat,内容如下:

 
  1. forfiles /p F:\Database_Backup /m *.bak /d -7 /c "cmd /c del /f @path"  

 

          在这里,我们删除7天以前的备份,同样地新建一个任务计划,将它执行的程序指向这个bat 即可,执行时间可以指定为一个月一次或一周一次等。

sql server 2008 自动备份(非维护计划)

标签:数据库   文件   keyword   自己   files   alt   start   body   程序   

人气教程排行