我们希望为 SQL 2008R2 数据库设置故障转移群集。为此,我们有 2 台服务器,均配备 Fusion I/O 卡,且两台服务器上都存储有我们生产数据库的相同副本。
从我读到的所有内容来看,我们应该设置服务器,以便它们都从某种共享文件存储中提取数据库。我们打算让两台服务器都从各自的 Fusion I/O 卡而不是文件共享中运行数据库。
考虑到它所做的“LooksAlive”和“isAlive”检查,集群似乎是高可用性 SQL 设置的正确选择,但如果共享存储是一项要求,我们可能需要考虑替代解决方案。
鉴于我们实际上只需要 HeartBeat 网络功能而不需要任何共享存储,我们还能使用 SQL 的故障转移群集吗?
答案1
考虑获取 SQL 2012(或更高版本)。这样您就可以拥有可用性组。这会将数据库存储在本地存储中,并将更改(同步或异步,您选择)复制到其他实例。这看起来是解决您问题的更好方法。
可用性组还使用 MS Clustering 将 IP/Listerner 从一个节点转移到另一个节点,但不需要共享存储。您仍然可以使用仲裁磁盘,但文件共享见证也可以工作。
答案2
您将如何保持两张 FusionIO 卡之间的数据同步?从本质上讲,2008R2 中的集群需要共享存储。如果这是 FusionIO 支持的配置,他们应该提供正确配置的步骤。