rem*_*rem 19 sql-server-2008 backup express-edition maintenance jobs
我有一个 ASP.NET MVC 应用程序,它与 SQL Server 2008 R2 Express 版下的数据库一起使用。需要定期执行更新数据库中的某些记录的任务。
不幸的是,Express Edition 缺少 SQL Agent。
你会推荐什么方法?
使用 ExpressMain,它是 SQL Server Express 用户非常方便的解决方案。
项目描述
该项目维护两个实用程序,用于自动备份和维护 SQL Server 2005/2008/2008R2 Express Edition 的数据库。它们基于 SQL Server 2000 附带的 sqlmaint 应用程序,但针对 SQL Server 2005/2008/2008R2 进行了更新。有一个独立的 VB.NET 控制台应用程序和一个 SQL 存储过程,演示了如何通过 SMO(SQL 管理对象)或 TSQL 自动执行数据库备份和维护任务。
这两篇文章会帮助你使用它
http://www.sqldbatips.com/showarticle.asp?ID=27
http://www.sqldbatips.com/showarticle.asp?ID=29
您可以使用 Windows 内置任务调度程序使用 SQL Express 提供的命令行工具运行 SQL 脚本 - 我相信http://msdn.microsoft.com/en-us/library/ms162773.aspx是包含在所有 SQL 2005 和 2008 版本中,包括 Express。
我建议为此专门设置一个用户并运行通过 Windows 集成身份验证记录的脚本。如果您确实使用基于用户/密码的身份验证,请确保正确保护包含密码的文件,特别是如果机器是共享机器。除了更细粒度地了解用户可以在您的数据库上做什么之外,以不同的 Windows 用户身份运行任务的另一个优点是,您无需费心确保没有控制台窗口打开来妨碍您在您登录时运行(如果您以自己的身份运行它,您可能会发现一个控制台窗口会在任务运行时弹出并声明焦点)。
我过去使用 Teratrax Job Scheduler 取得了成功:http : //www.teratrax.com/tjs/
您基本上可以将 SQL 脚本设置为按计划运行。非常易于使用,并有一个方便的小图形用户界面来管理您的日程安排。它还有一个内置的电子邮件通知系统,您可以使用它来通知成功/失败等。
前面提到的解决方案的缺点是它的价格为 99 美元,不过如果您想看一看,可以免费试用。