zoukankan      html  css  js  c++  java
  • 对复制进行故障排除

    对复制进行故障排除

    本部分包含有关排除复制故障所用到的工具和技术的信息。

    主题 说明

    复制故障排除工具

    介绍可用于排除复制故障的工具,其中包括:复制监视器、复制代理、存储过程及其他工具。

    复制问题的故障排除指南

    说明如何解决复制问题,其中包括:无法收敛数据;无法将数据传递到订阅服务器;处理低速网络;性能问题;安全问题以及从过期的合并订阅上载数据。

    复制错误的原因和解决方法

    介绍有关 Microsoft SQL Server 和复制代理所引发错误的原因和解决方法的信息。

    有关如何排除 Oracle 发布故障的信息,请参阅对 Oracle 发布服务器进行故障排除

    其他资源

    配置和维护复制


    A\复制问题的故障排除指南

    本部分介绍如何诊断和更正复制数据时可能出现的问题:



     

    复制错误的原因和解决方法

    更新日期: 2007 年 2 月 1 日

    本部分文档包含与复制相关的多个错误的原因和解决方法的信息。

    错误 消息

    MSSQL_ENG002601

    不能在具有唯一索引 '%.*ls' 的对象 '%.*ls' 中插入重复键的行。

    MSSQL_ENG002627

    违反了 %ls 约束 '%.*ls'。不能在对象 '%.*ls' 中插入重复键。

    MSSQL_ENG003165

    数据库 '%ls' 已还原,但在还原/删除复制时出错。该数据库仍保留为离线状态。请参阅 SQL Server 联机丛书中的主题 MSSQL_ENG003165。

    MSSQL_ENG003724

    无法对 %S_MSG '%.*ls' 执行 %S_MSG,因为它正用于复制。

    MSSQL_ENG004929

    无法更改 %S_MSG '%.*ls',因为正在为复制而发布它。

    MSSQL_ENG007395。请参阅对 Oracle 发布服务器进行故障排除

    无法启动链接服务器“%ls”的 OLE DB 访问接口“%ls”的嵌套事务。由于 XACT_ABORT 选项已设置为 OFF,因此必须使用嵌套事务。

    MSSQL_ENG014005

    无法删除发布。该发布已有订阅。

    MSSQL_ENG014010

    未将服务器“%s”定义为订阅服务器。

    MSSQL_ENG014114

    未将 '%s' 配置为分发服务器。

    MSSQL_ENG014117

    未将 '%s' 配置为分发数据库。

    MSSQL_ENG014120

    无法删除分发数据库 '%s'。此分发服务器数据库与发布服务器相关联。

    MSSQL_ENG014121

    无法删除分发服务器 '%s'。此分发服务器与分发数据库相关联。

    MSSQL_ENG014144

    无法删除订阅服务器 '%s'。在发布数据库“%s”中已有此服务器的订阅。

    MSSQL_ENG014150

    复制 - %s:代理 %s 成功。%s

    MSSQL_ENG014151

    复制 - %s: 代理 %s 失败。%s

    MSSQL_ENG014152

    复制 - %s:代理 %s 计划重试。%s

    MSSQL_ENG014157

    由发布 '%s' 的订阅服务器 '%s' 创建的订阅已过期,且已停止。

    MSSQL_ENG014160

    已设置发布 [%s] 的阈值 [%s:%s]。此发布的一个或多个订阅已过期。

    MSSQL_ENG014161

    已设置发布 [%s] 的阈值 [%s:%s]。请确保日志读取器和分发代理正在运行并且可以满足滞后时间要求。

    MSSQL_ENG014162

    已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。

    MSSQL_ENG014163

    已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。

    MSSQL_ENG014164

    已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。

    MSSQL_ENG014165

    已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。

    MSSQL_ENG018456

    用户 '%.*ls'.%.*ls 登录失败

    MSSQL_ENG018752

    一次只能有一个日志读取器代理或日志相关过程(sp_repldone、sp_replcmds 和 sp_replshowcmds)连接到某个数据库。如果执行了一个日志相关过程,那么在启动日志读取器代理或者执行另一个日志相关过程之前,请删除执行第一个过程时所用的连接,或者在该连接上执行 sp_replflush。

    MSSQL_ENG020554

    复制代理在 %ld 分钟内没有记录任何进度消息。这表明代理已停止响应或系统活动过多。请确保正在将记录复制到目标,并且与订阅服务器、发布服务器和分发服务器的连接仍然是活动的。

    MSSQL_ENG020557

    代理关闭。有关详细信息,请参阅作业 '%s' 的 SQL Server 代理作业历史记录。

    MSSQL_ENG020572

    在验证失败之后,订阅服务器“%s”对发布“%s”中项目“%s”的订阅已被重新初始化。

    MSSQL_ENG020574

    订阅服务器“%s”对发布“%s”中项目“%s”的订阅未通过数据验证。

    MSSQL_ENG020575

    订阅服务器“%s”对发布“%s”中项目“%s”的订阅已通过数据验证。

    MSSQL_ENG020596

    只有 '%s' 或 db_owner 的成员可以删除匿名代理。

    MSSQL_ENG020598

    应用复制的命令时在订阅服务器上找不到该行。

    MSSQL_ENG021075

    发布 '%s' 的初始快照尚不可用。

    MSSQL_ENG021076

    项目 '%s' 的初始快照尚不可用。

    MSSQL_ENG021286

    冲突表 '%s' 不存在。

    MSSQL_ENG021330

    无法在复制工作目录下创建子目录。(%ls)

    MSSQL_ENG021331

    无法将用户脚本文件复制到分发服务器。(%ls)

    MSSQL_ENG021385

    快照无法处理发布 '%s'。可能是由于活动架构的更改操作或者是所添加的新项目所致。

    MSSQL_ENG021617。请参阅对 Oracle 发布服务器进行故障排除

    无法运行 SQL*PLUS。请确保分发服务器上安装了最新版本的 Oracle 客户端代码。

    MSSQL_ENG021620。请参阅对 Oracle 发布服务器进行故障排除

    通过系统 Path 变量获得的 SQL*PLUS 版本不够新,无法支持 Oracle 发布。请确保分发服务器上安装了最新版本的 Oracle 客户端代码。

    MSSQL_ENG021624。请参阅对 Oracle 发布服务器进行故障排除

    在分发服务器 '%s' 上找不到已注册的 Oracle OLEDB 访问接口 OraOLEDB.Oracle。请确保分发服务器上安装并注册了最新版本的 Oracle OLEDB 访问接口。有关其他信息,请参阅 SQL Server 联机丛书中“排除 Oracle 发布服务器故障”中的“SQL Server 错误 21624”。

    MSSQL_ENG021626。请参阅对 Oracle 发布服务器进行故障排除

    无法使用 Oracle OLEDB 访问接口 OraOLEDB.Oracle 连接到 Oracle 数据库服务器 '%s'。

    MSSQL_ENG021627。请参阅对 Oracle 发布服务器进行故障排除

    无法使用 Microsoft OLEDB 访问接口 MSDAORA 连接到 Oracle 数据库服务器 '%s'。

    MSSQL_ENG021628。请参阅对 Oracle 发布服务器进行故障排除

    无法更新分发服务器 '%s' 的注册表,以允许 Oracle OLEDB 访问接口 OraOLEDB.Oracle 与 SQL Server 一起在进程中运行。请确保当前登录名有权修改 SQL Server 拥有的注册表项。

    MSSQL_ENG021629。请参阅对 Oracle 发布服务器进行故障排除

    指示 Oracle 的 Oracle OLEDB 访问接口 OraOLEDB.Oracle 已注册的 CLSID 注册表项不在分发服务器上。请确保分发服务器上安装并注册了 Oracle OLEDB 访问接口。

    MSSQL_ENG021642。请参阅对 Oracle 发布服务器进行故障排除

    异类发布服务器需要链接服务器。已有一个名为 '%s' 的链接服务器。请删除链接服务器或另选一个发布服务器名称。

    MSSQL_ENG021663。请参阅对 Oracle 发布服务器进行故障排除

    找不到源表 [%s].[%s] 的有效主键。

    MSSQL_ENG021684。请参阅对 Oracle 发布服务器进行故障排除

    “Oracle 发布服务器 "%s" 的复制管理用户权限不足。有关所需权限,请参阅脚本 /MSSQL/Install/oracleadmin.sql。”

    MSSQL_ENG021797

    '%s' 必须是有效的 Windows 登录名,且格式为:'计算机\登录名' 或 '域\登录名'。请参阅 '%s' 的文档。

    MSSQL_ENG021798

    在继续操作之前,必须通过“%s”添加“%s”代理作业。请参阅 '%s' 的文档。

    MSSQL_ENG024070

    客户端没有所需的特权。

    MSSQL_REPL020011

    进程无法在“%2”上执行“%1”。

    MSSQL_REPL027056

    合并进程无法更改“%1”上的生成历史记录。进行故障排除时,请使用详细的历史日志记录来重新启动同步,并指定要写入的输出文件。

    MSSQL_REPL027183

    合并进程未能使用参数化的行筛选器来枚举项目中的更改。如果此操作仍失败,请增大该进程的查询超时值,缩短发布的保持期,并改进对已发布表的索引。


     

    复制故障排除工具

    本部分介绍可用于排除复制故障的工具:

    除了以上列出的工具外,还有下列工具也可用于排除复制故障。

    工具 说明 有关详细信息...

    数据验证

    通过事务复制和合并复制,您可以验证订阅服务器中的数据与发布服务器中的数据是否匹配。可以对特定订阅或某一发布的所有订阅进行验证。

    验证已复制的数据

    tablediff 实用工具

    tablediff 实用工具用于比较两个非收敛的表中的数据,它对于排除复制拓扑中的非收敛故障非常有用。此实用工具可与验证结合使用:如果验证指示发布服务器中的数据和订阅服务器中的数据不匹配,可使用 tablediff 实用工具来标识不匹配的行;它还可以生成使发布服务器和订阅服务器收敛的 Transact-SQL。

    tablediff 实用工具

    How to: Compare Replicated Tables for Differences (Replication Programming)

    系统监视器

    系统监视器提供了许多与复制代理有关的计数器,并可用于排除复制性能故障。

    使用系统监视器监视复制

    SQL Server Profiler

    SQL Server Profiler 是另一个可用于排除复制性能故障的工具。您可以捕获有关服务器事件的数据并将其保存到文件或表中供以后分析。例如,可以针对存储过程或其他需要花费很长时间完成的过程监视复制的数据库。

    SQL Server Profiler 简介

    错误和事件日志

    Microsoft SQL Server 将某些系统事件和用户定义事件记录到 SQL Server 错误日志和 Microsoft Windows 应用程序日志中。可以使用 SQL Server 错误日志中的信息对与复制有关的问题进行故障排除。

    监视错误日志

    错误报告

    默认情况下,在 SQL Server 2005 中启用错误报告功能。如果 SQL Server 数据库引擎、SQL Server 代理或 Analysis Services 中发生致命错误,会向 Microsoft 自动发送一份报告。另外,如果需要联系客户支持部门,错误报告所提供的信息会很有用。

    错误和使用情况报告设置

    SQLdiag 实用工具

    SQLdiag 实用工具是一般用途的诊断收集实用工具,可作为控制台应用程序或服务运行。可以使用 SQLdiag 来从 SQL Server 和其他类型的服务器中收集日志和数据文件,同时还可将其用来一直监视服务器或对服务器的特定问题进行故障排除。SQLdiag 用于加快和简化为 Microsoft 客户支持服务部门收集诊断信息的过程。

    SQLdiag 实用工具

  • 相关阅读:
    2.7 矩阵的秩
    HDU
    HDU
    HDU
    HDU
    HDU
    hdu 5179 beautiful number(数位dp)
    ACdream
    CodeForces
    <a>标签中 href="/" 和 hideFocus="true"
  • 原文地址:https://www.cnblogs.com/liangqihui/p/1031111.html
Copyright © 2011-2022 走看看