Sqlserver数据库中没有维护计划使用windows默认的计划任务实现数据备份演示教学.docx
《Sqlserver数据库中没有维护计划使用windows默认的计划任务实现数据备份演示教学.docx》由会员分享,可在线阅读,更多相关《Sqlserver数据库中没有维护计划使用windows默认的计划任务实现数据备份演示教学.docx(8页珍藏版)》请在冰豆网上搜索。
![Sqlserver数据库中没有维护计划使用windows默认的计划任务实现数据备份演示教学.docx](https://file1.bdocx.com/fileroot1/2023-2/8/ebc0cba4-3eef-4c29-9f23-99b3a9665e05/ebc0cba4-3eef-4c29-9f23-99b3a9665e051.gif)
Sqlserver数据库中没有维护计划使用windows默认的计划任务实现数据备份演示教学
Sqlserver数据库中没有维护计划,使用windows默认的计划任务实现数据备份
Sqlserver2005/2008数据库中没有维护计划,使用windows默认的计划任务实现数据备份
有些朋友用到的数据库是sqlserver2005/2008express,但express这个版本的功能有些限制,无法使用维护计划。
想要实现express版本的自动备份可以使用系统自带的任务计划来实现。
制作备份脚本:
一、任意目录新建文件夹sqlbat
如:
C盘根目录
二、把下面语句保存为baksqlfullanddel.sql,保存到sqlbat文件夹中
1.修改数据库备份目的方件夹和数据库名称(红色标的地方)。
2.SELECT@OLDDATE=GETDATE()-2此语句为删除2天前的备份,删除多少天前的备份就把“2”修改一下就可以了。
DECLARE@sqlCommandNVARCHAR(1000)
DECLARE@dateTimeNVARCHAR(20)
SELECT@dateTime=REPLACE(CONVERT(VARCHAR,GETDATE(),111),'/','')+
REPLACE(CONVERT(VARCHAR,GETDATE(),108),':
','')
SET@sqlCommand='BACKUPDATABASE'+'数据库名称'+
'TODISK=''D:
\Backupsql\'+'数据名称'+'_Full_'+@dateTime+'.BAK'''
DECLARE@OLDDATEDATETIME
SELECT@OLDDATE=GETDATE()-2
EXECUTEsp_executesql@sqlCommand
EXECUTEmaster.dbo.xp_delete_file0,N'D:
\Backupsql\',N'bak',@olddate
三、把下面语句保存为baksqlanddell.bat,保存到sqlbat文件夹中
1.cdC:
\ProgramFiles\MicrosoftSQLServer\90\Tools\binn\此语句为进入到目录因为需要用到这个目录的sqlcmd.exe文件来进行备份操作
cdC:
\ProgramFiles\MicrosoftSQLServer\90\Tools\binn\
sqlcmd.exe-S127.0.0.1-E-iC:
\sqlbat\baksqlfullanddel.sql
任务计划:
一、任务计划程序
二、创建任务,进行备份。
手动执行测试:
一、手动执行baksqlanddell.bat文件
这里需要修改这个文件,添加一行输入pause。
这样手动执行的时候就可以显示成功或错误信息。
如成功运行即可把pause语句删除,一定要删除pause语句,否则任务计划无法运行。
cdC:
\ProgramFiles\MicrosoftSQLServer\90\Tools\binn\
sqlcmd.exe-S127.0.0.1-E-iC:
\sqlbat\baksqlfullanddel.sql
pause
二、手动执行baksqlanddell.bat文件,错误结果解决方法:
默认设置SQLServer不允许远程连接这个事实可能会导致失败:
在SQLServer实例上启用远程连接(SQLSERVER2005/2008操作步骤一致)
1.指向“开始->程序->MicrosoftSQLServer2005->配置工具->SQLServer外围应用配置器”
2.在“SQLServer2005外围应用配置器”页,单击“服务和连接的外围应用配置器”
3.然后单击展开“数据库引擎”,选中“远程连接”,在右边选中“本地连接和远程连接”。
如下图:
三、手动执行任务计划
找到我们刚写的任务计划,选中此条任务计划右键“运行”。
运行后看“上次运行结果”,如成功执行即显示“操作成功完成.(0x0)”。
如下图:
四、手动执行任务计划错误结果解决方法:
0x41301:
“控制面板”--->“管理工具”--->“本地安全策略”。
在“本地安全策略”窗口中,依次单击“本地策略”--->“用户权限分配”,然后单击“作为批处理作业登录”,将此执行此计划任务的用户增加到列表里就可以了。
你会问“计划任务的用户”什么鬼?
请看下图。
如果遇到依然显示0x41301,请检查baksqlanddell.bat文件有没有删除pause语句。