1、Sqlserver数据库中没有维护计划使用windows默认的计划任务实现数据备份演示教学Sqlserver数据库中没有维护计划,使用windows默认的计划任务实现数据备份Sqlserver2005/2008数据库中没有维护计划,使用windows默认的计划任务实现数据备份有些朋友用到的数据库是sqlserver 2005/2008 express ,但express这个版本的功能有些限制,无法使用维护计划。想要实现express版本的自动备份可以使用系统自带的任务计划来实现。 制作备份脚本:一、任意目录新建文件夹sqlbat 如:C盘根目录二、把下面语句保存为baksqlfullandde
2、l.sql ,保存到 sqlbat 文件夹中1. 修改数据库备份目的方件夹和数据库名称(红色标的地方)。2. SELECT OLDDATE=GETDATE()-2 此语句为删除2天前的备份,删除多少天前的备份就把“2”修改一下就可以了。 DECLARE sqlCommand NVARCHAR(1000) DECLARE dateTime NVARCHAR(20) SELECT dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),111),/,) + REPLACE(CONVERT(VARCHAR, GETDATE(),108),:,) SET sqlCo
3、mmand = BACKUP DATABASE + 数据库名称 + TO DISK = D:Backupsql + 数据名称 + _Full_ + dateTime + .BAK DECLARE OLDDATE DATETIMESELECT OLDDATE=GETDATE()-2EXECUTE sp_executesql sqlCommand EXECUTE master.dbo.xp_delete_file 0,ND:Backupsql,Nbak,olddate三、把下面语句保存为baksqlanddell.bat , 保存到 sqlbat 文件夹中1. cd C:Program Files
4、Microsoft SQL Server90Toolsbinn 此语句为进入到目录因为需要用到这个目录的sqlcmd.exe 文件来进行备份操作cd C:Program FilesMicrosoft SQL Server90Toolsbinnsqlcmd.exe -S 127.0.0.1 -E -i C:sqlbatbaksqlfullanddel.sql任务计划:一、任务计划程序二、创建任务,进行备份。手动执行测试:一、手动执行baksqlanddell.bat 文件这里需要修改这个文件,添加一行输入 pause。这样手动执行的时候就可以显示成功或错误信息。如成功运行即可把 pause 语句
5、删除,一定要删除pause语句,否则任务计划无法运行。cd C:Program FilesMicrosoft SQL Server90Toolsbinnsqlcmd.exe -S 127.0.0.1 -E -i C:sqlbatbaksqlfullanddel.sqlpause二、手动执行baksqlanddell.bat 文件,错误结果解决方法:默认设置 SQL Server 不允许远程连接这个事实可能会导致失败:在SQLServer 实例上启用远程连接(SQL SERVER2005/2008操作步骤一致)1.指向“开始-程序-Microsoft SQL Server 2005-配置工具-S
6、QL Server 外围应用配置器”2.在“SQL Server 2005 外围应用配置器”页, 单击“服务和连接的外围应用配置器”3.然后单击展开“数据库引擎”, 选中“远程连接”,在右边选中“本地连接和远程连接”。如下图:三、手动执行任务计划找到我们刚写的任务计划,选中此条任务计划右键“运行”。运行后看“上次运行结果”,如成功执行即显示“操作成功完成.(0x0)”。如下图:四、手动执行任务计划错误结果解决方法:0x41301:“控制面板”-“管理工具”- “本地安全策略”。在“本地安全策略”窗口中,依次单击“本地策略”- “用户权限分配”,然后单击“作为批处理作业登录”,将此执行此计划任务的用户增加到列表里就可以了。你会问“计划任务的用户”什么鬼?请看下图。如果遇到依然显示0x41301,请检查baksqlanddell.bat 文件有没有删除pause语句。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1