问题标签 [mirroring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
799 浏览

svn - 镜像两个可写 SVN 存储库之间的子文件夹

我遇到了涉及我公司的 SVN 服务器的情况。我们将所有重要的代码保存在一个锁定的服务器中(我们称之为“开发”服务器)。有一些文件需要由公司网络之外的用户编辑,所以我们有另一个 SVN 服务器(“全局”服务器),它可以在防火墙外访问,并包含那些包含外部所需文件的目录的副本。如果重要的话,全局服务器的文件夹结构是开发服务器的一个子集(即它只是几个选择的文件/目录,但都具有相同的相对路径等)。如果您想阅读它,我已经在帖子末尾简要解释了为什么我们要尝试这样做,但相信我,它必须在两个单独的服务器上完成。

乍一看,svnsync这似乎是这项工作的理想选择,但不幸的是,它要求它是唯一修改目标存储库的东西。显然,这不会起作用,因为我们的开发存储库被大量使用。

在我看来,有两种解决方案,它们都不是一个好的解决方案。我希望有人可以帮助我调整其中一个,或者更好地提供替代方案。

  1. 我的第一个想法是在开发服务器中使用外部,但这有一些问题。最值得注意的是,外部将遵循头部修订(我们不想将其设置为特定修订,因为这会破坏这一点),因此如果我们提取旧版本的开发存储库,外部定义仍将指向到全局 repo 的负责人,而不是全局 repo 在我们旧版本时代的样子——因此我们将无法简单地通过检查旧版本来重新创建旧版本。
  2. 另一种解决方案是让 cron 作业定期从全局存储库中导出最新修订版,并将这些更改的文件覆盖到来自开发存储库的工作副本上,然后提交更改。可能这个覆盖和提交步骤将使用svn_load_dirs.plSVN 自带的脚本。理想情况下,这将作为全局 repo 上的 post-commit 挂钩完成,但同样出于防火墙原因,全局服务器无法访问开发服务器,因此必须由防火墙内的机器执行(可能是开发服务器机器本身) . 这种方法的缺点是:开发服务器可能会在 cron 作业的时间间隔内过期,并且如果有人不小心对开发服务器进行了更改,他们的更改将被踩踏。(顺便说一句,如果有人能想出一种双向同步的方法,那就太棒了!)

我目前倾向于选项 2,因为它似乎让我尽可能接近我需要的东西,但这仍然是一个非常糟糕的选择。这本质上也是我们目前正在做的事情,用人类而不是 cron 工作。我为这篇长文道歉。非常感谢您提供的任何帮助。

解释为什么:我们需要这些共享文件存在于开发服务器目录层次结构中,因为它们是我们软件的必需部分,因此构建、测试等必须具有它们。我不能通过防火墙暴露开发服务器——我试图说服那些失败的权力。我已经向决策者明确表示,为此使用两台单独的服务器并不是 SVN 的预期用途,而且可能会出现问题。为了帮助缓解我们已经预见到的一些问题,只有全局服务器是可写的。开发服务器的文件副本在概念上将是只读的(仅在从全局服务器同步更改时修改),但我没有 t 认为我实际上可以使用 SVN 访问控制强制执行该只读策略,因为该目录结构中的某些文件不会存在于全局 repo 中,因此需要在 dev 中可编辑,所以我不能盲目地制作只读的东西。在每个文件的基础上设置只读似乎是不可维护的,因为有数百个并且它们经常被添加和删除。

0 投票
1 回答
1423 浏览

iis - IIS 7 和故障转移伙伴

我正在尝试将一些 asp.net 应用程序从 iis 6 迁移到 iis 7,但我遇到了一些障碍。我找不到任何关于我所看到的问题的文档,并想看看其他人是否遇到了同样的问题。

我在我的数据库上使用 SQL Server 2005 db 镜像。在我的应用程序的连接字符串中,我指定了故障转移伙伴,这在 iis 6 中没有引起任何问题。现在在移动到 iis 7 后,连接字符串中的故障转移伙伴关键字导致我的应用程序在尝试访问数据库时超时。当我从连接字符串中删除故障转移合作伙伴关键字时,应用程序工作正常。

有没有人遇到过这个问题?这是预期的行为还是某种错误?

任何人都可以提供给我的任何信息将不胜感激。

0 投票
5 回答
4801 浏览

sql-server - SQL Server 2005 数据库镜像错误

尝试在我的服务器上设置 SQL Server 2005 数据库镜像时出现以下错误。我正在运行两台装有 SQL 2005 的 Win2K3 服务器,其中一台与 SQL 2000 版本一起运行。使用端点还原数据库NORecovery并配置端点后,当我尝试启动镜像会话时遇到以下错误。

我还要注意,我可以使用两台服务器的全名远程登录到端口。

更新

辅助服务器在本地 1434 上作为命名实例运行 SQL Server 2005,并在与所使用的 FQDN 匹配的 IP 地址上作为 1433 在网络上运行。

[编辑]

我能够 Telnet 到两台服务器上的 5022 端口。

[解决方案]

如果您可以登录并且两个端口都处于活动状态,则可能是 SQL Server 使用的基础帐户不是域帐户。在我们的服务器上,本地系统帐户是服务登录的身份。一旦将其更改为管理员域帐户,问题就解决了。

0 投票
2 回答
7224 浏览

sql-server-2008 - 在 SQL Server 镜像方案中设置见证时出现错误

我有三个不属于任何域且不使用 AD 的 Windows 服务器(data1、data2 和 datawitness)。我正在尝试根据http://alan328.com/SQL2005_Database_Mirroring_Tutorial.aspx上的说明设置镜像。在我告诉 data1 使用 datawitness 作为见证服务器的最后一组指令之前,我已经取得了成功。该步骤失败并显示以下消息:

更改数据库 MyDatabase 设置见证 = 'TCP://datawitness.somedomain.com:7024'

ALTER DATABASE 命令无法发送到远程服务器实例“TCP://datawitness.somedomain.com:7024”。数据库镜像配置未更改。验证服务器是否已连接,然后重试。

我已经使用 telnet 测试了端口 7024 和 1433,并且两台服务器确实可以相互连接。我还可以从主服务器上的 SQL Server 管理器添加到见证服务器的连接。我已经在两台服务器上使用配置管理器来启用命名管道并验证 IP 流量是否已启用并默认使用端口 1433。

还能是什么?我是否需要打开任何其他端口才能使其正常工作?(防火墙规则非常严格,但我知道前面提到的端口上的流量是明确允许的)

这里值得一提的注意事项:

  • 每台服务器在不同的网段

  • 服务器不使用 AD 并且不是域的一部分

  • 没有为这些服务器配置 DNS 服务器,因此我使用 HOSTS 文件将域名映射到 IP 地址(使用 telnet、ping 等验证)。

  • 防火墙规则非常严格,我无法直接调整它们,但如果需要我可以调用更改

  • Data1 和 Data2 使用 SQL Server 2008,Datawitness 使用 SQL Express 2005。它们都使用默认实例(即它们都不是命名实例)

0 投票
4 回答
5936 浏览

sql-server - 数据库镜像/复制,SQL Server 2005

我有两台运行 SQL Server 2005 Enterprise 的数据库服务器,我想将其中一台用作镜像数据库服务器。

我需要的是;在镜像服务器上从主服务器创建一个精确的副本数据库,因此当主服务器关闭时,我们可以将应用程序上的数据库 IP 切换为使用镜像服务器。

我检查了 SQL Server 2005 上的“镜像”功能,并基于这篇文章:
http ://aspalliance.com/1388_Database_Mirroring_in_Microsoft_SQL_Server_2005.all

不能直接访问镜像数据库;但是,可以为只读目的拍摄镜像数据库的快照。(先决条件 4)

那么当主服务器关闭时我无法访问它时,它有什么用处呢?

我一直在考虑在主服务器上创建一个定期备份,并每小时在镜像服务器上恢复它,但这非常低效(慢),特别是如果我想要一个精确的副本(因为每分钟添加一次数百个数据)。

还有什么建议吗?

编辑:
也许我的意思是复制的东西,而不是镜子(感谢 JP 的评论)

0 投票
2 回答
4736 浏览

sql-server - 通过复制在 SQL Express 中实现类似镜像的功能?

我们有 2 个 SQL Express (2005) 服务器。您可能知道,Express 版本中未启用数据库镜像,但复制已启用。是否可以在两个服务器之间启用复制以具有某种类似镜像的功能?!如果可能的话,可能的缺点是什么?

0 投票
2 回答
371 浏览

.net - 如何镜像一个半 3D 网格物体?

假设我们有一个半 3D 网格对象并希望在 C# 2008 Express 中镜像它。也就是说,我们希望根据对象的中心线得到它的等分部分。

你能帮我做那件事吗?

提前致谢。

0 投票
2 回答
1023 浏览

sql-server - SQL Server 中的跨数据库视图和镜像

我有一个关于镜像和跨数据库视图的问题。我们在数据库 X 中有一个视图,它引用同一服务器 S1 上的数据库 Y。数据库 X 和 Y 都镜像到另一台服务器 S2。问题是:如果 db X 故障转移到 S2,则引用 db Y 的视图现在正在查看 S2,但 db Y 可能没有故障转移。解决这个问题的最佳方法是什么?您能否创建一个镜像对,以便如果一对中的 dbs 上的 1 个故障转移,另一个也可以吗?

谢谢

0 投票
4 回答
6906 浏览

sql-server - 我可以在我的 SQL 连接字符串中使用故障转移伙伴而不进行镜像吗?

我承认我有点小气,但我不想为通过镜像获得 SQL Server 自动故障转移所需的三台服务器而奔波,尤其是因为这三台服务器中的一台除了作为见证服务器之外什么都不做。

如果我设置了从主服务器到备份服务器的正常 SQL 复制(比如快照),我可以在我的 ASP.NET 应用程序中设置我的连接字符串以包含“故障转移伙伴=备份”吗?似乎客户端上的 ADO.NET 应该只尝试主节点,如果主节点不可用,则故障转移到备份。

或者这只适用于镜像?

(我喜欢镜像的想法,但是如果您不想为见证服务器付费,则必须手动将备份服务器切换为主服务器。)

谢谢!

0 投票
11 回答
15257 浏览

sql-server - 缩小镜像 SQL Server 2005 数据库的事务日志

我一直在寻找整个互联网,我找不到我的问题可接受的解决方案,我想知道是否有一个没有妥协的解决方案......

我不是 DBA,但我是一个单人团队,在一个巨大的网站上工作,没有额外的资金用于额外的机构,所以我正在尽我所能。

我们的备用计划很糟糕,我很难改进它。目前,有两台服务器运行 SQL Server 2005。我有一个似乎运行良好的镜像数据库(无见证)。我在中午和午夜进行完整备份。这些由我们的服务提供商每晚备份到磁带上,我每周将备份文件刻录到 dvd 以保留旧记录。最终我想切换到日志传送,因为如果没有见证服务器,镜像似乎毫无意义。

问题是事务日志不断增长。从我所做的研究来看,我似乎无法截断镜像数据库的日志文件。那么如何阻止文件增长!?

基于此网页,我尝试了以下操作:

但这没有用。我发现的所有其他内容都表明我需要在运行备份日志命令之前禁用镜像才能使其工作。

我的问题 (TL;DR)

如何在不禁用镜像的情况下缩小我的事务日志文件?