因为需要同步两台服务器之间的数据库,于是准备采用SQL自己的发布订阅机制
具体步骤参考了:http://kb.cnblogs.com/page/103975/
单中间遇到了几个错误。
其一是提示执行createprocess失败,google后得知是因为cmd.exe的权限问题,于是为cmd加上了sql账号的权限。
其二是在最后的步骤老是工作目录无效的错误:
- 正在配置分发服务器 (已停止)
消息
* SQL Server 无法将“WEBSERVER02”作为发布服务器启用。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
其他信息:
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
工作目录 'D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\ReplData' 无效。
已将数据库上下文更改为 'master'。 (Microsoft SQL Server,错误: 21037)
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.00.1600&EvtSrc=MSSQLServer&EvtID=21037&LinkId=20476
- 正在创建发布“pubtext” (已停止)
- 正在添加项目 (已停止)
- 正在启动快照代理 (已停止)
google了很多地方,参考了MSDN的 如何禁用发布和分发, 创建发布, 保护快照文件夹的安全等文章之后最终觉得还是快照文件夹权限的问题,于是又为快照文件夹添加了SQL server的账号完全控制权限,但是最终也没能解决问题。不知道到底为什么。
后来将快照文件夹直接修改成了网络共享目录:\\xx\sqlshare,居然成功了。
很奇怪~