问题标签 [database-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.
sql-server - SQL Server 2012 - 100% CPU 直到冷重启
我们有一个带有数据库镜像的 SQL Server 2012:
- 2 Windows Server 2012 R2 (SQL Server) +
- 1 个 Windows 7 见证人 +
- 2 Windows Server 2012 R2 (IIS) 与 NLB 一起使用
服务器处理器:
- 英特尔至强 CPU E5-2609 v2
- 内存:16GB
在测试中,镜像服务器(B
)的 CPU 增加到 50% 左右(通常应该在 10% 以下),主服务器( )的 CPU 增加到 50%A
左右。
系统速度大大降低。
在我们软重启镜像服务器 ( B
) 后,CPU 增加到 70%,主体服务器 ( A
) 保持不变。但是当我们软重启主服务器 ( A
) 时, ( B
) CPU 增加到 100% 并且 ( A
) CPU 增加到 60%。大多数连接显示时间已过期。
我们断开与服务器的所有连接(拔下网线),只保留 4 台服务器和见证。
两台服务器的 CPU 保持不变。
A
我们在 ( ) & ( )上重启 SQL 服务后B
,问题没有改善。
我们检查了没有具体的阻塞查询,sp_who
连接正常。
直到我硬重启服务器,系统恢复正常。
感谢任何想法,谢谢!
sql-server - 在 SQL Server 镜像设置中从一个数据库运行查询到另一个数据库
我们在 SQL Server 2008 R2 上有两个数据库。这些数据库都镜像到第二台服务器。DB1 在 DB2 上运行 SELECT 查询。
该查询假设 DB1 和 DB2 位于同一数据库服务器上,但如果其中一个发生故障转移怎么办?
目前,我们的代码会出错,因为 DB1 和 DB2 不再位于同一台服务器上。有没有办法让 DB1 在它所在的任何服务器上查询 DB2?
sql-server - 针对镜像数据库的密集查询运行
对于 SQL Server 2012 Enterprise Edition,我们有一个名为 X1 的镜像数据库。我们可以查询辅助数据库。我想使用 SELECT 查询从这个辅助镜像数据库 (X1) 中提取数据,并将结果插入到另一个名为“Y1”的非镜像数据库中,该数据库与辅助镜像数据库位于同一实例上,然后执行广泛的 SQL 操作在“Y1”上。
我的问题是,对“Y1”的这些广泛的SQL查询会影响主X1数据库的顺利运行吗?鉴于主服务器在不同的机器上并使用不同的磁盘?
sql-server-2008-r2 - 镜像环境中的 Db 故障转移导致来自 Web 应用程序的连接尝试失败,直到重新启动应用程序池
我有一个镜像的 sql server db 环境。IIS 中托管的负载平衡应用程序正在访问数据库。在连接字符串中,我提到了故障转移伙伴。当我执行从 db1 到 db2 的故障转移时,应用程序无法连接。
我收到的错误是:
建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)在 MyMethod() 处的 MyMethodName() System.ComponentModel.Win32Exception (0x80004005):找不到网络路径 System.Data.SqlClient.SqlException (0x80131904):找不到服务器或无法访问服务器。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)---> System.ComponentModel.Win32Exception (0x80004005):
一旦我重新启动应用程序池,应用程序将能够再次连接到数据库。我的连接字符串如下所示。
<add name="SqlString" connectionString="Data Source=12.34.56.79,9100;Failover Partner=12.34.56.78,9100;Initial Catalog=test;Persist Security Info=True;User ID=####;Password=#####" />
我正在使用 Sql server 2012、IIS 8.5、Windows Server 2012
对此的任何帮助将不胜感激
sql-server - 无法对数据库执行操作,因为它涉及数据库镜像会话或可用性组 (Azure)
我遇到了 SQL Azure 的间歇性问题。我正在将只读 SQL Azure 数据库 (V12) 从一个弹性池复制到另一个。复制数据库后,我将其设置为读/写使用:
这有时会因错误而失败:
无法对数据库 *** 执行该操作,因为它涉及数据库镜像会话或可用性组
我尝试使用退避实现重试逻辑,但这不起作用。我未能找到与此错误或 Azure 中的数据库镜像相关的任何文档。
任何建议将不胜感激!
database-migration - 跨数据库迁移是使用 FlywayDB 还是 Liquibase?
我正在做一个项目,该项目计划使用/管理 3 个不同的数据库 [MySQL、SQL Server、Oracle] 作为后端。现在我已经完成了我的数据库设计以及我在 MySQL 数据库中设置的所有内容。
现在我也必须迁移/克隆到 SQL Server 和 Oracle。此外,我需要系统自动更新,无论我将在 MySQL 数据库 [结构,而不是数据] 中进行的任何更改都将在 SQL Server 和 Oracle 中复制。
我无法从 FlywayDB 和 Liquibase 的文档中找到任何有价值的东西,而不是数据库源代码控制机制。
那么我可以寻求/获得 FlyWayDB 或 Liquibase 的支持吗?或者这个任务有替代方案吗?请指教。
sql-server - Microsoft SQL Server 错误 1475
任何人都可以帮助我吗?
我正在尝试将我们的 SQL Server 2005 镜像到我们的 DR 站点。我已经成功完成了一半的数据库,没有任何问题。
但是,其余的都有以下 Microsoft SQL Server 错误 1475:
无法启用数据库镜像,因为“DBNAME”数据库可能包含尚未备份的批量记录更改。主体上的最后一个日志备份必须在镜像上恢复。(.Net SqlClient 数据提供者)
我不确定为什么会发生这种情况,因为我所做的与那些有效的没有什么不同,如下所示。唯一的区别是这些数据库的大小比现在镜像的稍大。
- 将恢复模式更改为完全,
- 对 Principal 进行完整备份,
- 在 Principal 上进行日志备份,
- 使用 Norecovery 复制到 DR 并恢复两者,
- 在主体上开始镜像。
我已经研究了该错误,但大多数评论都指出要执行上述操作,但这对我不起作用。
非常感谢任何帮助。
sql-server - SQL Server 镜像连接问题
- 服务器 A:Win 2008,SQL Server 2012,IP:1.1.1.1(主体)
- 服务器 B:Win 2008,SQL Server 2012,IP:2.2.2.2(镜像)
2台服务器不在同一个局域网,没有域,所以需要使用IP进行镜像配置。
我按照我在互联网上找到的分步文章并成功设置了镜像。
但是,首先,当我在主体数据库上打开镜像监视器时
有错误提示未连接,这是可以理解的,因为 2 个服务器位于 2 个不同的位置,它们无法识别彼此的服务器名称。
然后我尝试编辑连接但无法编辑..
我应该如何修复这里?
其次,我手动停止了主体服务器,以测试如何让镜像服务器接管..
这里没问题,镜像数据库显示“Principal, Disconnected”并正常工作
然后,当我尝试恢复镜像时......
同样,连接显示服务器名称并且不允许我编辑,当然我无法连接回原始主体服务器
因此,我无法恢复镜像..
非常感谢您提供解决问题的任何线索...
sql-server - 复制 SQL Server 数据库以进行报告
我正在尝试确定将 SQL Server 数据库从其生产环境复制到另一台服务器以进行报告的最佳方式。
我们使用的基于云的软件应用程序基于 SQL Server 数据库。供应商允许我们访问他们的架构,我们构建自己的查询和视图以用于报告目的。目前每晚都会对生产数据库进行完整备份,并通过安全 FTP 发送给我们,此时我们将备份恢复到我们的报告服务器。此过程不可靠,因为 SFTP 传输经常失败。
我正在寻找一种替代解决方案,可能类似于日志传送或数据库镜像。这不是一个高可用性练习,只是寻找获取数据库只读副本以驱动报告的最佳方式。
任何建议都会非常受欢迎。
sql-server - 具有发布和订阅的 SQL Server 复制不起作用,因为它需要实际的服务器名称才能建立连接
我有一台所有软件(500 个应用程序)都知道的计算机/SQL Server 机器 TMPSQL2
所以在这TMPSQL2
台机器上我有一个数据库,我想通过发布来设置复制。
问题是
SQL Server 无法连接到服务器“tmpsql2”。
附加信息:
SQL Server 复制需要实际的服务器名称才能连接到服务器。不支持通过服务器别名、IP 地址或任何其他备用名称进行连接。指定实际的服务器名称“TMPSQL7”。(复制。实用程序)
所以我跑
果然是真的TMPSQL7
有人改名了?多年前??
那么我该如何解决这个问题。不是重命名此机器的选项,许多应用程序都在“寻找”TMPSQL2
所以错误表明不允许使用别名?我希望进行配置 SSCM 别名添加(待定无害)
- 我还可以发布/订阅吗,如果可以,怎么做?
- 还有什么建议可以使用我在新机器上恢复的新备份来复制或镜像数据库吗?