2013-05-02 58 views
0

我已经给了一个任务来开发用于监视/备份我们服务器上的数据库的应用程序。数据库监控应用程序的体系结构

应用程序应该做的事情

  • 备份,并在给定的时间复制备份到指定的地方(用户可以改变时间和地点)关于完成备份
  • 发送电子邮件通知,在给定的时间,如果有错误发生,报告的细节
  • 所有备份参数应该为可编辑
  • 阅读给定的地方
的数据库凭据

所以我想到了一个windows服务,可以通过windows窗体应用程序进行配置。我在这里做正确的方向吗?

+0

我敢打赌,有很多第三方产品正是为此目的而建造的,为什么要重新发明轮子?更何况一些数据库产品有内置的。 – 2013-05-02 19:56:50

+0

你能指点我一些吗? – user49126 2013-05-02 20:17:31

+0

@ user49126如果你告诉我你使用哪个数据库,我可以在我的答案中提供一些名称。 – Stefan 2013-05-03 05:53:19

回答

0

有很多产品被设计来做到这一点。获得现有产品(体面支持)比开发自己的产品,测试并排除故障等要容易得多,而且成本可能更低。 Oracle已为其数据库实施备份和恢复功能,请参阅Introduction to Backup and Recovery。另外,IIRC Windows服务被设计为不与窗体进行通信(或其他方式),所以你的建议可能不会像你期望的那样工作。 MSDN: Interactive Services。请注意以下文字:

从Windows Vista开始,服务无法直接与用户进行交互。因此,标题为“使用交互式服务”一节中提到的技术不应在新代码中使用。

0

您可以在没有第三方软件的情况下执行此操作。假设每个RDBMS都带有一些工具,比如。命令行工具。其中之一是(可以)备份/恢复。现在,你可以做什么:

  1. 编写一个批处理文件来完成这项工作
  2. 创建Windows任务调度任务,这将运行该批处理(是的,你可以通过任务调度发送电子邮件)