我似乎在两个 SQL2000 实例之间建立第一次复制时遇到了很大的困难。
它们都在单独的 WAN 中运行(为 SQL-remote 分配了 IP 和端口),但我已经能够通过远程 SQL 连接它们,因此它们在两个地方的企业管理器中都会出现。
我不知道如何正确地做到这一点,因为我尝试过很多不同的方法,但在尝试做到这一点时遇到很多错误。
我不知道这是否是安装错误(带有 SP4)或者我需要调整某些权限,或者我尝试做的事情是否不可能。
我的想法是使用主服务器(我们称之为 MASTER 或 #5),然后将其中的一些数据库发布到辅助/备份服务器(我们称之为 SLAVE 或 #4)并进行复制
我在两个账户上都添加了“同步账户登录”,使用相同的名称和密码,看看这样是否能让事情变得更容易。我拥有完全的管理权限,因此可以对此设置进行任何必要的更改 - 只要我能尽快修复它。(如果修复需要这么长时间,我已经开始考虑完全离开 SQL-server,并检查 MySQL 或其他东西)...
但是...对于当前的任务/情况:
我们有两台服务器,一台用于生产,一台用于开发,我非常希望将更改合并到这两个“单实例”之间。它们附近没有 ActiveDirectory 机制,因此它们是 100% 独立的机器。
当我尝试将主服务器配置为“分发服务器/发布服务器”时,向导因错误“(null)”而停止???我收到一些奇怪的错误代码,但没有任何用处。
所以我想知道,是否有关于如何以正确顺序执行此操作的“指南”,以便我在尝试设置之前检查是否遗漏了某些内容。一些权限、一些标志、一些补丁或额外的防火墙端口或复制所需的某些奇怪的东西。
到目前为止我发现的每个例子都看起来很容易,但它就是不起作用......
请帮助 :-)
答案1
要在不在同一域中的两个服务器之间运行复制,您需要执行以下操作之一。
- 将远程服务器名称添加到其他服务器主机文件中。
- 将远程服务器添加到本地域 DNS/WINS 服务器。
此后,每台机器都应该能够通过本地名称访问另一台机器,这是复制工作所必需的。一旦名称解析工作正常,您应该能够运行向导来完成设置。
现在请记住,通常建议不要在生产和开发之间复制数据,特别是合并复制,因为在开发环境中所做的任何更改都将复制到生产数据库。
还请记住,一旦复制了表,您就不能使用常规 ALTER TABLE 命令对这些表进行任何架构更改。您必须使用复制过程来添加列。另一个问题是 SQL 2000 复制将向您正在复制的每个表添加一个 guid 列。
流程哪里出了问题?您能设置分销商吗?