- 2
- 0
- 约1.45万字
- 约 10页
- 2023-10-24 发布于广西
- 举报
MSSQL 数据库培训手册Replication
深入MSSQL 复制
1. 影响Transaction 复制的因素
* 滞后时间: 在复制拓扑中的节点之间传播数据更改所用的时间。
* 吞吐量: 系统在某段时间内可以承受的复制活动量(通过某个时间段内传递的命令数量来度量)。
* 并发: 可以在系统上同时运行的复制进程数。
* 同步持续时间: 完成给定同步所用的时间。
* 资源消耗: 用作复制处理结果的硬件和网络资源。
可以通过windows 性能计数器或者 复制监控器 来抓去相关数据.
滞后时间和吞吐量与事务复制关系最密切,因为建立在事务复制基础上的系统通常需要低滞后时间和大吞
吐量。并发和同步持续时间与合并复制关系最密切,因为建立在合并复制基础上的系统通常具有大量的订
阅服务器,并且发布服务器可能具有大量与这些订阅服务器的并发同步。
提高常规复制的性能
* 设置分配给 Microsoft SQL Server 数据库引擎的最小和最大内存量。
数据库引擎根据可用的系统资源动态改变它的内存要求。为避免在复制活动期间出现低内存可用性
的问题,请使用 min server memory 选项设置最小可用内存。为避免将操作系统页写入磁盘以节省内存,
也可以使用 max server memory 选项设置最大内存量。
* 确保正确分配数据库数据文件和日志文件。使用单独的磁盘驱动器存放复制过程中所涉及的所有数
据库的事务日志。
通过将日志文件与数据库存储在不同的磁盘驱动器上,可以减少写入事务所需的时间。如果需要容
错,可以使用独立冗余磁盘阵列 (RAID)1+0
* 考虑增加复制所用的服务器的内存,尤其是分发服务器的内存。
* 使用多处理器计算机。
复制代理可以利用服务器中的附加处理器。如果运行时 CPU 使用很高,请考虑安装更快的 CPU 或
多个 CPU。
* 使用快速网络。
网络可能是一个重要的性能瓶颈,尤其是对于事务复制而言。需满足每秒 100 兆位 (Mbps) 或更
快的网络,可以显著提高将更改传播到订阅服务器的速度。
数据库设计
* 遵循数据库设计最佳实践。
复制数据库通常能够从性能优化中获得与非复制数据库一样的好处。但是,在订阅服务器中使用索
引时应谨慎:应为订阅服务器中的主键列建立索引,但附加的索引可能影响插入、更新和删除操作的性能。
* 考虑设置 READ_COMMITTED_SNAPSHOT 数据库选项。
为帮助减少用户活动与复制代理活动之间的争用,请为发布和订阅数据库设置下列选项:
ALTER DATABASE AdventureWorks
SET READ_COMMITTED_SNAPSHOT ON
1 / 10
MSSQL 数据库培训手册Replication
下面提供通过SQL 脚本来抓去相关复制的性能数据:
/*****************************************************************************************/
/*Create DataBase*/
Create Database DBCenter;
/* DROP TABLE*/
USE dbcenter;
IF OBJECT_ID (NCounterData) IS NOT NULL
DROP TABLE CounterData;
IF OBJECT_ID (NCounterDETAILS) IS NOT NULL
DROP TABLE CounterDETAILS;
IF OBJECT_ID (NDisplayToID) IS NOT NULL
DROP TABLE DisplayToID;
/*CREATE PERFORMANCE*/
DECLARE
@LogmanName SYSNAME
,@ServerNameAll SYSNAME
,@ServerName SYSNAME
,@DnsLoginName SYSNAME
,@Path SYS
原创力文档

文档评论(0)