AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 126686
Accepted
Matt Dawdy
Matt Dawdy
Asked: 2010-03-27 09:44:31 +0800 CST2010-03-27 09:44:31 +0800 CST 2010-03-27 09:44:31 +0800 CST

SQL Server 复制错误

  • 772

“复制管理的身份范围已满,必须由复制代理更新。”

这已经开始发生了。我们最近故意中断了复制,并且不打算重新建立复制。

我还需要做什么来修复此错误?有人对我有什么建议吗?

sql-server replication
  • 1 1 个回答
  • 400 Views

1 个回答

  • Voted
  1. Best Answer
    Deutsch
    2010-03-27T12:06:56+08:002010-03-27T12:06:56+08:00

    MS SQL Server 复制在主键列上使用数据库约束来防止服务器之间的冲突。

    例如,假设您有一个名为“users”的表,其主键名为“user_id”,在服务器 A 和服务器 B 上运行。服务器 A 对 user_id 列有一个约束,允许值在 1 到 100 之间。服务器 B将对 user_id 列有一个限制,允许值在 101 到 200 之间。这样,如果在服务器 A 上同时插入一个新用户,同时在服务器 B 上插入一个不同的新用户,他们将永远不会有相同的 user_id 号码。

    由于您有意中断了复制并且不打算再次启动它,因此您有两个选择。(标准免责声明:进行备份。)

    如果您还没有,您可以尝试从 SQL Server Management Studio 中删除该发布。这应该会从您的数据库中删除所有复制配置内容,并且可能会为您解决问题。

    否则,如果你需要手动做,你应该可以进入并手动删除这些约束。转到有问题的表,深入到约束,并查找名称类似于“repl_identity_range”的名称。右键单击它并选择“修改”。您应该看到一个限制身份范围的表达式。它看起来像这样:

    ([user_id]]>(1) AND [user_id]]<=(100))

    这是确保新生成的 id 对于每个服务器都是唯一的实际规则。删除它,您应该不再看到这些错误。

    以下是一些可能有帮助/信息的其他资源:

    http://www.simple-talk.com/sql/database-administration/the-identity-crisis-in-replication/ http://msdn.microsoft.com/en-us/library/ms176057.aspx

    • 1

相关问题

  • sql server 连接字符串上的网络数据包大小以提高吞吐量

  • 基于 Microsoft 的服务器(IIS、MSSQL 等)上的病毒扫描应排除哪些内容?

  • SQL 洗衣清单

  • OPENROWSET、二进制文件、varchars 和 varbinaries

  • 聚集索引与非聚集索引?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve