初始化订阅主要是由分发代理分发和应用快照代理之前生成的快照,所以优化的主体是分发代理。
1、初始化订阅
  • 首先在本地创建一个订阅,发布服务器、分发服务器和订阅服务器都在同一台服务器上,仅为了测试生产环境不要这样做

  • 分发服务器参数配置

  • 初始化订阅运行时间

需要注意几点:
  • 快照代理实际执行的是BCP程序,生成快照文件:

  • 快照代理会在快照生成的初始阶段使用锁,虽然时间很短,但是影响范围较大。
  • 在快照生成过程中,不能对表的结构进行更改。
2.优化参数测试
  • 新建一个分发代理配置文件,命名为“分发代理优化参数 ”
  • 查找这个代理配置文件的profile_id
SELECT * FROM msdb.dbo .MSagent_profiles WHERE agent_type =3
或者
EXEC sp_help_agent_profile @agent_type= 3
  • 修改配置文件
EXEC sp_change_agent_parameter @profile_id = 18,
@parameter_name = 'MaxBcpThreads', @parameter_value = 4 EXEC sp_change_agent_parameter @profile_id = 18,
@parameter_name = 'BcpBatchSize', @parameter_value = 100000 EXEC sp_change_agent_parameter @profile_id = 18,
@parameter_name = 'PollingInterval', @parameter_value = 500000
  • 优化后订阅库生成测试结果,从测试结果上看并没有明显的优化。MaxBcpThreads并没有实现多线程的数据导入,后台查询也只有一个会话在执行bulk in操作,BcpBatchSize对参数影响较小,建议设置的大一些;另外两个参数不影响订阅数据库的生成效率。其实订阅库生成是整个过程的性能瓶颈所在,如果能使用多线程还是不错的解决方法,希望看到博客的同学有好方法提供一下。

SQL Server提高事务复制效率优化(三)订阅初始化优化的更多相关文章

  1. SQL Server提高事务复制效率优化(一)总体概述

      随着公司业务的发展,数据量增长迅速,在解决Scale Out的同时,还要考虑到主从的复制延迟问题,尽量降到1s以内满足线上业务,如果不调整,SQL Server默认的配置可能平均要3s左右.生产的 ...

  2. SQL Server提高事务复制效率优化(二)快照初始化优化

    测试数据表量1500w+,使用初始化默认的快照代理参数,复制的三个过程包括快照初始化,订阅初始化和数据修改复制,主要对快照代理.分发代理.日志读取代理分别作了参数优化,并给出优化前后的对照实验测试. ...

  3. SQL Server提高事务复制效率优化(四)修改数据同步过程优化

    1.原理       我说的数据修改同步过程指的是在快照生成完毕,分发代理将快照应用于订阅服务器完成订阅服务器初始化后,发布服务器后续的更改同步到订阅服务器过程,这也就是我们常常关注的延迟.此过程主要 ...

  4. SQL Server 2000事务复制问题

    2000现在用的估计不多了,把之前收集的一些复制问题整理发布出来.可能都是些很白很二的问题,但人总是由最初的无知不断成长●-● SQL Server 2000事务复制问题服务器A(发布) 服务器B(分 ...

  5. SQL Server提高并发查询效率

    同事写了个程序用创建多个线程使用ado同时对同个数据库进行相同的查询,涉及2张数据表的联查.当线程数非常多的情况下,读取数据的效率就会变得很慢,例如50个线程同时查询大概3000条数据,查询完成后通过 ...

  6. Sql Server 2012 事务复制遇到的问题及解决方式

    1.订阅服务器提示:作业失败.无法确定所有者 WIN-01Q6JB46CHV\Administrator(拥有作业XXX)是否有服务器访问权限(原因:无法获取有关 Windows NT 组/用户'WI ...

  7. 通过SQL Server 2008数据库复制实现数据库同步备份

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步,正常情况下只使用主 ...

  8. sql server 2008数据复制

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行实时数据同步,正常情况下只使用主数 ...

  9. 【转】通过SQL Server 2008数据库复制实现数据库同步备份

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行实时数据同步,正常情况下只使用主数 ...

随机推荐

  1. Timberwolves forward Kevin Garnett to retire _洛杉矶时报

    Timerwolves:森林狼队,forward:前锋; kevin Garnett,the best player in Minnesota Timberwolves history,is expe ...

  2. HTML中的属性、段落、标题、换行等

    HTML的属性html标签的属性总是以名称/值(name=“value”)的方式出现:属性总是在html元素的开始标签中规定: 1.html链接由<a>标签定义,url在href中指定:& ...

  3. SQLServer 数据库查看死锁、堵塞的SQL语句

    http://www.cnblogs.com/zhuque/archive/2012/11/08/2763343.html 死锁和堵塞一直是性能测试执行中关注的重点. 下面是我整理的监控sql ser ...

  4. 1、rhel 6.5 系统准备

    1.启动.关闭.重置服务    (rhel7 为 systemctl) [root@rhel-6 ~]# service atd status #关闭atd服务 atd 已停 [root@rhel-6 ...

  5. vlc 在ie11 中的addEventListener事件不触发

    在vlc控件中触发一事件,在IE11之前的版本使用attachEvent注册一个回调函数后IE11可以捕获到事件,但IE11中提示attachEvent不支持.经查询发现IE11已经去掉了attach ...

  6. [git]问题list

    1. fast-forward和non fast-forward分别代表什么概念? 2. 在git中文件index是个什么概念? 3. stage/index/cache三者有什么关系? 4. git ...

  7. windows使用nginx实现网站负载均衡测试实例

    如果你关注过nginx,必定知道nginx这个软件有什么用的,如果你的网站访问量越来越高,一台服务器已经没有办法承受流量压力,那就增多几台服务器来做负载吧.做网站负载可以买硬件设备来实现,比如F5,不 ...

  8. Hadoop总结篇之一------开篇

    从今天开始新的系列:Hadoop总结篇 之前的hadoop学习篇由于是学习过程中随手记下来的一些内容,不具有系统性.所以在这个系列中,将凭着这段时间的研究心得,来记录一些自认为比较重要的东西. 本系列 ...

  9. ASP.NET中控件命名规则

    控件名 简写 控件名 简写 Web 窗体 Label lbl TextBox tb Button btn LinkButton lb HyperLink hl Repeator rpt ImageBu ...

  10. USACO 滑雪课程

    #include<cstdio> #include<iostream> using namespace std; int T,S,N,maxd; ],lv[],next[],f ...