【问题标题】:SQL Merge Replication between SQL Server 2012 and SQL Server CE, 3.5, sp2SQL Server 2012 和 SQL Server CE、3.5、sp2 之间的 SQL 合并复制
【发布时间】:2013-03-12 15:47:58
【问题描述】:

尝试在 SQL Server CE 3.5 sp2 上创建订阅时,在 SQLCESALOG.txt 中收到“OpenDB 无法获取 pub 版本 28627”。

server1 正在运行 Win 2008、IIS 7.0、SQL Server CE 3.5 sp2、复制工具、客户端工具。此服务器还托管快照共享。合并客户端诊断页面 (http://server1.localhost/websync/sqlcesa35.dll?diag) 除“9.0 Database Reconciler”外全部检出,我认为这不是必需的,因为我没有使用 SQL Server 2005(如果错误请更正)。 Web 同步向导 (connwiz.exe) 使用集成身份验证设置 /websync vdir - 禁用所有其他类型。

server2 正在运行 Windows 7、SQL Server 2012。

我使用 TCP/IP 作为客户端和服务器协议。我已经尝试使用 SA 帐户以及用户帐户(我将其用作每个服务器上的服务帐户(也是管理员)。似乎没有任何效果。我在 SQL 2012 服务器上没有看到登录尝试. 防火墙已关闭。我运行 netmon 并可以看到两台机器之间的端口 1433 流量。我已通读 ErikEJ 的博客,但没有任何内容可以帮助我解决此错误。我找到的唯一一个有解决方案的人解决了它通过创建一个名为管道客户端协议的别名。这对我没有帮助。

我在 websync 目录的日志中看到的错误如上。 GUI 实际呈现给我的错误是:

无法使用提供的信息连接到 SQL Server。 SQL Server 不存在,访问被拒绝,因为 SQL 用户不是 SQL Server 上的有效用户,或者密码不正确。 HRESULT 0x800040005 (29060)

【问题讨论】:

    标签: sql-server-ce sql-server-2012 merge-replication


    【解决方案1】:

    我最近看到这个错误,它是由错误的SqlCeReplication参数引起的(具体来说,数据库名称(PublisherDatabase)是错误的。我使用SQL Server Profiler捕获了登录尝试中的参数。

    【讨论】:

    • 我刚刚意识到我没有使用累积更新 6(或 7)所以,我猜这可能是(或部分是)连接到 Denali 的问题。刚刚重新安装,但现在我面临另一个问题 - 我的 SQL 2008R2 mgmt 工具没有看到 SQL CE 安装,所以我无法管理数据库。现在我正在尝试加载您的工具箱,看看是否有帮助。
    • 另外,我想我可能需要在 IIS 机器上加载 SQL 2012 复制工具。我只有2008R2
    【解决方案2】:

    问题已解决。我有 2 个问题:

    1. 我没有使用 SQL 2012 支持的 SQL CE SP2 版本(累积更新 7)。

    2. 我没有安装 SQL 2012 复制组件。我安装了 SQL 2008 R2 复制组件。

    一旦我解决了所有这些问题,复制就开始工作了。但是,我失去了使用 SQL Management Studio 管理我的 CE 数据库的能力。我现在必须使用 SQL Server Compact Toolbox。

    【讨论】:

      猜你喜欢
      • 2010-12-30
      • 1970-01-01
      • 2011-01-10
      • 2010-09-21
      • 1970-01-01
      • 2013-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多