0

我在 SQL Server 2008 Express Edition 中创建了一个数据库。我可以在 VB.net express 中编写一个程序来在指定的时间进行每日备份吗?我需要写什么代码?

4

1 回答 1

2

为此编写一个 VB.NET 应用程序可能有点矫枉过正。您需要编写一个 Windows 服务或类似的东西以在无限循环上运行,并找出代码来进行数据库备份。

因为它是 express 的,所以当然没有 SQL Server 代理来运行计划的作业。但是,您可以通过从操作系统调度作业来做同样的事情。这是一篇关于如何完成此任务的好文章: http ://www.fmsinc.com/free/NewTips/SQL/SQLServerExpressDatabase/Automated_Backup.asp 。引用文章:

  • 使用向导创建一个新的备份设备(展开 Server Objects => New Backup Device)。
  • 右键单击新的备份设备并选择要备份的数据库。
  • 选择备份类型(通常是“完整”)。
  • 为作业选择一个名称。如果您愿意,请插入说明。
  • 单击添加按钮以添加设备目标(这是您希望放置备份 .bak 输出文件的位置)。
  • 单击确定。备份设备现已设置。对要备份的每个数据库重复步骤 3-7。
  • 使用以下语法创建批处理文件(用于执行备份设备)。下面是一个语法示例(请记住使用“BAT”文件扩展名保存此文件):
sqlcmd -S MYSERVER\OFFICESERVERS -E -Q "BACKUP DATABASE MASTER TO TEST"

..where “MYSERVER” is the name of the SQL Server machine.
..where “OFFICESERVERS” is the name of the SQL Server.
..where “Test” is the name of the backup job.
..where “MASTER” is the name of the database.
  • 最后,打开 Microsoft Windows 计划程序并将上面创建的批处理文件分配给计划的事件。将事件设置为在您希望的时间点运行。有关 Microsoft Windows 调度程序及其有用功能的更多信息,请使用您首选的搜索引擎执行 Web 搜索或查阅您的 Microsoft Windows 文档。
于 2012-05-18T06:14:48.987 回答