在做SQL故障转移群集的时候应该选择哪种模式?

简介:

如果我们的SQL Server要保证高可用性,那么可以采用故障转移群集。最简单的故障转移群集是两台服务器,一台做活动的服务器,另一台做备用服务器,这就是AP模式的Cluster。另外一个模式就是AA模式,也就是两台服务器都是运行SQL Server实例。

SQL Server不像Oracle一样有RAC,所以不可能说两台服务器同时运行同一个实例,想要两台服务器都使用起来的话,那么只有各自运行一个实例。

那么我们企业里面要做Cluster的时候,到底应该做AP模式的还是做AA模式的呢?

AP模式是在两台服务器上安装一个数据库实例,只有一台服务器负责该数据库实例的全部运算和操作,另外一台服务器闲置。当活动的服务器发生故障时,系统自动启动另一台服务器的实例,实现故障转移。AP模式的最大缺点就是资源利用率低,只有一台服务器在被使用。

AA模式是在两台服务器上安装两个数据库实例,每台服务器分别运行一个数据库实例。当某一台服务器发生故障时系统将把发生故障的服务器上的数据库实例切换到另一台服务器上运行,也就是说另一台服务器上同时运行两个实例,当服务器恢复正常后再手动将一个数据库实例切换回另一台服务器。AA模式保证了两台服务器资源都被利用。

关于1个数据库实例中2个数据库和2个数据库实例中各1个数据库的区别:

1. 1个数据库实例中的2个数据库都必须运行在同一台服务器上,所以如果2个数据库都具有大量的运算占用大量的资源,则可能造成数据库服务器压力过大,运行缓慢;而2个实例中各1个数据库则可以将每个实例部署在不同的服务器上,各自使用各自服务器的资源,相互没有影响。

2. 1个实例中2个数据库的相互访问比较简单,可以对2个数据库进行事务操作;而2个实例中的数据库要相互访问则需要通过链接服务器或者其他方式来访问,如果要在2个实例中进行事务操作则需要启用分布式事务MSDTC,使用分布式事务将会使事务时间变长,事务出现错误的可能更大,甚至出现各种灵异的错误,所以一般不推荐使用分布式事务。

所以,如果我们在有足够资源(也就是很有钱的意思)的情况下,而且想简单一点,那么我们就做AP模式。毕竟AA模式比AP模式更复杂,更难于管理。如果我们想充分利用服务器资源,服务器有限,而且多个数据库之间不存在分布式事务的话,那么用AA模式是一个不错的选择。

以以前的经验来看,最好不要使用分布式事务,会遇到各种各样灵异的问题。

目录
相关文章
|
6月前
|
SQL Java 数据库
JSP毕业设计宣传网站系统myeclipse开发sql数据库BS模式java编程网页结构
JSP 毕业设计宣传网站系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 二、功能介绍
33 0
|
6月前
|
SQL Java BI
JSP超市销售管理统myeclipse开发sql数据库BS模式java编程网页结构
JSP 超市销售管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为SQLSERVER2008,使用java语言开发
25 0
|
4月前
|
SQL 消息中间件 缓存
Flink SQL中使用DEBUG模式来输出详细的日志信息,
Flink SQL中使用DEBUG模式来输出详细的日志信息,
134 0
|
6月前
|
SQL Java 数据库
JSP工艺品展示与销售网站myeclipse开发sql数据库BS模式java编程
JSP工艺品展示与销售网站是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语,言开发系统主要采用B/S模式开发。
40 0
|
6月前
|
SQL Java 数据库
JSP公文管理系统myeclipse开发sql数据库BS模式java编程
JSP 公文管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
39 0
|
6月前
|
SQL 前端开发 Java
JSP个人信息管理系统myeclipse开发sql数据库BS模式java编程struts2技术mvc框架
JSP 个人信息管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助struts2技术mvc框架,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
57 0
|
6月前
|
SQL 前端开发 Java
JSP网上订餐管理系统myeclipse开发sql数据库BS模式java编程servlet技术mvc框架
JSP 网上订餐管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助servlet技术mvc框架,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
39 0
|
6月前
|
SQL 前端开发 Java
JSP缺陷问题(bug)管理系统myeclipse开发sql数据库BS模式java编程MVC结构
JSP 缺陷问题(bug)管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库采用 serlvet dao bean MVC模式进行开发,系统主要采用B/S模式开发。
29 0
|
6月前
|
SQL Java 关系型数据库
JSP图书销售系统myeclipse开发sql数据库BS模式java编程
JSP 图书销售系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
34 0
|
6月前
|
SQL Java 数据库
JSP 书籍分享系统myeclipse开发sql数据库BS模式java编程
JSP 书籍分享系统是一套完善的web设计系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
33 0