最近在配置SQL 2008的发布订阅功能时,遇到了几个小错误,顺便归纳总结一下(以后碰到各类关于发布订阅的错误都将收录、更新到这篇文章),方便自己在以后碰到这类问题时,能够迅速解决问题。毕竟人的记忆能力有时效性,时间久了,有可能有些东西就模糊了或忘了,好记性不如烂笔头。

错误1:在数据库服务器上新建本地发布服务时报错。

(图1)

报错的具体细节如下所示:

TITLE: New Publication Wizard
------------------------------Microsoft SQL Server Management Studio is unable to access replication components because replication is not installed on this instance of SQL Server. For information about installing replication, see the topic Installing Replication in SQL Server Books Online.For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600.1&EvtSrc=Microsoft.SqlServer.Management.UI.ReplUtilitiesErrorSR&EvtID=ReplicationNotInstalled&LinkId=20476------------------------------
ADDITIONAL INFORMATION:Replication components are not installed on this server. Run SQL Server Setup again and select the option to install replication. (Microsoft SQL Server, Error: 21028)For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.4000&EvtSrc=MSSQLServer&EvtID=21028&LinkId=20476------------------------------
BUTTONS:OK
------------------------------

View Code

查看具体原因,是因为安装数据库实例时,没有选择安装Replication components,需要添加Replication components,首先找到安装光盘或安装镜像文件,挂载到光驱或拷贝到某个文件目录,例如,我这边挂载后的安装介质位于Z盘,在运行里面输入cmd命令,转到Z盘,输入下面命令:

setup.exe /q /Features=Replication /InstanceName=MSSQLSERVER /ACTION=INSTALL /IAcceptSQLServerLicenseTerms ,然后耐心等待安装完成,从网上搜索的资料看,好像下面命令start /wait X:\Servers\setup.exe /qb INSTANCENAME=MSSQLSERVER ADDLOCAL=SQL_Replication也可,不过,这条命令我还没有试验过。不保证能够顺利执行。

错误2:The Process could not execute ‘sp_repcmd’ on ‘xxxx’

(图2)

报错的具体细节如下所示:

DESCRIPTION: Replication-Replication Transaction-Log Reader Subsystem: agent xxxxx failed. The process could not execute 'sp_replcmds' on 'xxxxxx'.

从网上查到的资料,只需修改数据库的Owner设置为sa即可解决,但是本质原因是啥?我没搞明白,后来查了一下资料:http://stackoverflow.com/questions/2723061/sql-server-2008-replication-failing-with-process-could-not-execute-sp-replcmds 显然不一定要修改数据库的Owner为sa也可。看来这应该是权限问题引起的。

                                           (图3) 

错误3:Replication-Replication Distribution Subsystem agent xxxxxxx failed. The process could not read file 'xxxxxxx' due to OS error 3.

(图4)

查看SQL SERVER日志文件,发现很多类似错误:

Date 6/28/2013 10:40:01 AM

Log SQL Server (Current - 6/28/2013 10:39:00 AM)

Source spid454

Message

Replication-Replication Distribution Subsystem: agent xxxxxxxxxx failed. The process could not read file 'xxxxxxxxxxxxxxxxxx' due to OS error 3.

Date 6/28/2013 10:40:01 AM

Log SQL Server (Current - 6/28/2013 10:39:00 AM)

Source spid454

Message

Error: 14151, Severity: 18, State: 1.

产生这个错误的原因是因为使用请求订阅或远程分发服务器时,您必须指定一个 UNC 网络共享,例如 \\<computername>\snapshot,而不是为快照文件夹的本地路径。单击发布属性,查看Snapshot属性,发现快照文件位于G:\GEG_MESDB文件夹里,但是此时这里修改不了,只能去掉“Put files in the default folder"选项,勾选”Put Files in the following folder“选项,输入网络路径,即可解决上面这个错误。

错误4:

Date 7/12/2013 1:20:38 PM

Log SQL Server (Current - 7/12/2013 1:10:00 PM)

Source spid326

Message

Replication-Replication Snapshot Subsystem: agent EGVNT02-MESDB-EGV_MESDB-1 failed. The replication agent had encountered an exception.

Source: Unknown

Exception Type: System.UnauthorizedAccessException

Exception Message: Access to the path '\\EGVNT02\EGV_MESDB_Replication\unc\EGVNT02_MESDB_EGV_MESDB\20130712132037\' is denied.

Messa

文件夹权限问题,我用NT 账号T1登录数据库,但是配置过程中用的是NT账号T2,共享文件夹没有授权给NT账号T2,所以报上面错误。

参考资料:

http://www.sqlserverclub.com/essentialguides/how-to-install-sql-server-2005-replication.aspx

http://social.msdn.microsoft.com/Forums/sqlserver/en-US/64c041f5-3822-408f-b072-99feb18a5fcc/replication-components-are-not-installed

http://www.cnblogs.com/dudu/archive/2010/08/25/1808313.html

http://stackoverflow.com/questions/2723061/sql-server-2008-replication-failing-with-process-could-not-execute-sp-replcmds

http://www.sqlservercentral.com/blogs/sqlrepl/2011/11/30/the-process-could-not-read-file-due-to-os-error-3/

转载于:https://www.cnblogs.com/kerrycode/p/3155799.html

MS SQL 2008 发布订阅配置错误总结相关推荐

  1. SQL Server发布订阅配置及实例讲解

    本文源自:https://blog.csdn.net/u010476739/article/details/107443420 环境: vmware workstation prop 15.1 win ...

  2. SQL Server 2008 R2的发布订阅配置实践

    纸上得来终觉浅,绝知此事要躬行.搞技术尤其如此,看别人配置SQL SERVER的复制,发布-订阅.镜像.日志传送者方面的文章,感觉挺简单,好像轻轻松松的,但是当你自己去实践的时候,你会发现还真不是那么 ...

  3. Sql Server发布订阅如何添加新表如何不初始化整个快照

    Sql Server按照默认配置发布订阅,之后如果要在该发布中添加一张或多张新表时,启动快照代理,会将整个发布全部初始化,如果数据量巨大,可能会灾难性的初始化几个甚至十几个小时,而且无法挽回,因此在做 ...

  4. sql server 发布订阅

    数据库订阅发布(SQL SERVER) 1.1.数据库发布 登陆需要接入的系统的数据库,必须是通过源系统的服务器的计算机名登陆系统 配置方法如下在C:\Windows\System32\drivers ...

  5. sql server 发布订阅_Windows 10 Build 19042.608发布 修复多项BUG_华强北软件网_软件行情_软件新闻_软件评测_手机应用文章...

    原标题:Windows 10 Build 19042.608发布:任务栏新增"Meet Now"按钮 Release Preview 频道的 Windows Insider 成员现 ...

  6. MS SQL 2008认证考试大纲

    工作职责 认证 考试科目 使用SQL Server 2008并执行以下管理任务:安装.配置和维护 MCTS: SQL Server 2008运作和维护 Exam 70-432:TS: SQL Serv ...

  7. sql server发布订阅和log shipping日志传送的优缺点

    快照传送 备份模式 可选方式 选项参数说明 可发布对象 逻辑说明 适合场景 缺点 PUB/SUB(发布和订阅) 快照发布 发布服务器按照预定的时间间隔向订阅服务器发布快照 表 存储过程 视图等 通过源 ...

  8. sql server 发布订阅_Mick的SQL基础教程 2月24日-25日

    第一章 序章 DBMS的种类 层次数据库(Hierarchical Database,HDB):把数据通过层次结构(树形结构)的方式表现出来 关系数据库(Relational Database,RDB ...

  9. MS SQL 2008 Express 下载

    http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=b5d1b8c3-fda5-4508-b0 ...

最新文章

  1. PowerBuilder9对中文字符串的处理方法
  2. One order popup window 显示逻辑
  3. Leetcode 给定一个数组,给定一个数字。返回数组中可以相加得到指定数字的两个索引
  4. 分析单点登录(流程图与数据安全)
  5. H5横竖屏的两种解决方法
  6. 全球国家或地区 及其 区号
  7. 2018tfe世界计算机专业排名,2018年TFE TIMES美国研究生计算机科学专业排名
  8. oracle11g ora12514,Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务...
  9. 【已解决】【V2版本】如何使用脚本关闭Win10自动更新服务并阻止其自动启动?
  10. 数字图像处理第三章-----空间域滤波
  11. 如何清理 WinSxS 文件夹-2022版
  12. 什么是云桌面?云桌面的三大基本架构组成部分
  13. win7任务管理器快捷键
  14. Java 上机----实训操作14----学校录取类
  15. 利用useRef hooks 解决 定时器关闭不到的问题
  16. Java开发——IDEA
  17. 使用requests爬取IT橘子
  18. WAF(Web应用层防火墙)了解学习
  19. 百度地图三种定位方式测试(高精度、低功耗、仅用设备)
  20. “2019-04-25T16:00:00.000+000”时间格式转换 (IE兼容问题)

热门文章

  1. springboot+jsp中文乱码_【spring 国际化】springMVC、springboot国际化处理详解
  2. 判断是否是完全二叉树_【数据结构】二叉树高频考试题目【代码模板】!
  3. 怎么获取php文件,学习猿地-php怎么获取文件修改时间?
  4. Python部署与安装
  5. 华为鸿蒙战略大会,华为发布鸿蒙2.0手机版的三大战略意义,全场景万物互联只是其一...
  6. c mysql连接池_在LINUX下用C/C++写了一个连接池(访问MYSQL)的类
  7. jquery去掉数组最后一个元素_从数组中删除最后一项
  8. velocity参数重新赋值_Velocity(5)——#set指令
  9. python处理nc文件并输出_利用python如何处理nc数据详解
  10. 元器件大一点好,还是小一点好?