复制是否适合这种情况?

复制是否适合这种情况?

案子:

  • 一个工业 IT 系统,控制和存储两条生产线的数据
  • 每条生产线有一台服务器。每台服务器运行该生产线的自动化对象。每台服务器都有一个本地 SQL 服务器数据库,用于存储该生产线的数据。
  • 自动化软件具有内置冗余功能。一条生产线上的服务器发生故障,自动化对象将转而在另一台服务器上运行。

设想一个场景:生产线 1 的服务器上的磁盘控制器发生故障。目前将发生以下情况:

  • 自动化对象将开始在生产线 2 的服务器上运行。
  • 但是当自动化对象开始对服务器 1 进行数据访问时,它们当然会失败(因为磁盘控制器不起作用)。

因此,我们讨论了各种选择。一位同事提出了以下建议:

  • 在服务器 2 上复制服务器 1 的数据库。反之亦然。
  • 使用本地主机连接字符串设置数据访问。
  • 因此,当自动化对象开始在另一台服务器上运行时,它们的数据访问将转到其正在运行的服务器上的数据库。

我没有复制经验。复制是解决上述问题的可行方法吗?设置复制时要记住的重要事项?还有其他建议吗?

答案1

如果您使用的是 SQL2005 或 2008,则可以考虑在两台服务器之间进行同步数据库镜像,并使用第三台服务器作为见证服务器来处理自动故障转移。这被称为“无自动故障转移的高安全性”

http://msdn.microsoft.com/en-us/library/ms189852.aspx

http://technet.microsoft.com/en-us/library/cc917713.aspx

或者,如果您可以在服务器之间使用共享存储,则可以考虑主动/被动 Windows 集群。

答案2

  1. 那么,为所有这些本地数据库建立一个集中式 SQL 后端怎么样?
  2. 将控制操作系统及其中的所有内容虚拟化,这样如果物理服务器出现故障,虚拟机就会在另一台服务器上启动。
  3. 保持一切原样,但为服务器配备 FT 功能,即双 PSU、两个控制器上的 RAID10、两个 UPS 单元为冗余电网供电等。

相关内容