易截截图软件、单文件、免安装、纯绿色、仅160KB

在做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模式是一个不错的选择。
以以前的经验来看,最好不要使用分布式事务,会遇到各种各样灵异的问题。


相关文档:

SQL Server 经常用到的几个设置选项

1. SET DEADLOCK_PRIORITY
说明:控制在发生死锁情况时会话的反应方式。如果两个进程都锁定数据,并且直到其它进程释放自己的锁时,每个进程才能释放自己的锁,即发生死锁情况。
语法:SET DEADLOCK_PRIORITY { LOW | NORMAL | @deadlock_var }
参数:LOW   ......

如何把Access转成SQL Server的方法介绍


如何把Access转成SQL Server的方法介绍
很多朋友想用SQL 2000数据库的编程方法,但是却又苦于自己是学Access的,对SQL只是一点点的了解而已,这里我给大家提供以下参考---将Access转化成SQL 2000的方法和注意事项。首先,我说的是在Access 2000,SQL 2000之间转换,其他的我也还没有尝试过,希 ......

PL/SQL Developer使用技巧

 1、PL/SQL
Developer记住登陆密码
   在使用PL/SQL
Developer时,为了工作方便希望PL/SQL
Developer记住登录Oracle的用户名和密码;
设置方法:PL/SQL
Developer 7.1.2 
->tools->Preferences->Oracle->Logon History , “Store
history”是默认勾选的,勾上&ldqu ......

SQL SERVER操作ACCESS的存储过程

/*
--作用:SQL SERVER操作ACCESS的存储过程
----------------------用法-------------------------------
--创建表tc
exec sp_operate_access 'create table tc(id int)','c:\db1.mdb'
go
--在tc表插入数据
exec sp_operate_access 'insert into tc(id) values(1)','c:\db1.mdb'
go
--删除tc表的数据
exec sp_op ......

Oracle SQL的硬解析和软解析


 
说到软解析(soft prase)和硬解析(hard prase),就不能不说一下Oracle对sql的处理过程。当你发出一条sql语句交付Oracle,在执行和获取结果前,Oracle对此sql将进行几个步骤的处理过程:
    1、语法检查(syntax check)
    检查此sql的拼写是否语 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号