我正在尝试设置数据库之间的复制。我遵循了以下教程:
https://learn.microsoft.com/en-us/sql/relational-databases/replication/tutorial-preparing-the-server-for-replication?view=sql-服务器-ver15
以及之后:
https://learn.microsoft.com/en-us/sql/relational-databases/replication/tutorial-replicating-data-between-continuously-connected-servers?view=sql-服务器-ver15
我第一个顺利通过。几乎完成了第二步,但我坚持步骤查看快照生成的状态
当我尝试strat快照代理时,我得到错误:
异常消息:本机SQL Server连接组件中发生了未指定的错误。
我试图在互联网上搜索MSSQL_REPL55012(这是我得到的错误代码(,但没有成功。
我试着查看SQL事件探查器、作业历史记录、复制监视器,甚至从PowerShell中运行了失败的作业步骤,但无法获得更多信息。
可能是什么问题?还有谁偶然发现的吗?
我正在使用:
-
SSMS版本15.0.18206.0
-
SQL Server引擎15.0.2000.5
我终于解决了这个问题。问题是缺少OLE DB驱动程序。
我刚下载了最新的驱动程序。然后我在目录C:WindowsSysWOW641033
中获得了msoledbsqlr.rll
驱动程序。然后我复制到C:Program FilesMicrosoft SQL Server150COM
目录,这样snapshot.exe
就可以找到它,它是快照代理运行的可执行文件。
或者,可以定义环境变量指向C:WindowsSysWOW641033
目录,这样就可以在那里找到它。
另一个问题可能是64位SQL试图使用32位驱动程序(msoledbsql.dll
、msoledbsqlr.rll
(,但在我的情况下这不是问题。
我知道这个问题已经得到了回答,但为了将来参考,将SQL server 2019更新为我解决的最新CU。