zoukankan      html  css  js  c++  java
  • SQL Server提高事务复制效率优化(三)订阅初始化优化

    初始化订阅主要是由分发代理分发和应用快照代理之前生成的快照,所以优化的主体是分发代理。
    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对参数影响较小,建议设置的大一些;另外两个参数不影响订阅数据库的生成效率。其实订阅库生成是整个过程的性能瓶颈所在,如果能使用多线程还是不错的解决方法,希望看到博客的同学有好方法提供一下。

     

  • 相关阅读:
    linux下安装qt-4.5_for_TQ210_V1.0.(TQ210)-ubuntu11.10过程出现的问题
    15+ 易响应的CSS框架快速开启你的敏捷网站项目
    分享10个超实用的jQuery代码片段
    免费数据库+免费空间建站
    25个令人难忘的广告设计
    android实现点击效果
    ServletContextListener
    ServletContext
    一个不错的地址--类序列化等
    Java的运行时数据存储机制
  • 原文地址:https://www.cnblogs.com/datazhang/p/5961456.html
Copyright © 2011-2022 走看看