问题标签 [alwayson]

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 回答
2396 浏览

.net - 使用 MultiSubnetFailover 连接到 SQL Server 2012 AlwaysOn 组侦听器会导致超时

我们遇到了一个奇怪的问题,即当 MultiSubnetFailover 设置为 true 时,我们的开发人员无法连接到 AlwaysOn 可用性组侦听器。但是,客户端可以在尝试直接连接到组的主节点时进行连接。我们已经在使用 .Net 4.0.3 的 Windows 8 和使用 .Net 4.0.3 的 Windows 7 上进行了以下最低测试。和.Net 4.5。

我们还成功地让我们的登台服务器通过组侦听器连接,以及使用 sqlcmd 和 SMS 使用 MultiSubnetFailover 标志连接到 vip。因此,侦听器本身似乎已正确配置。

以下是对侦听器名称的 nslookup 的结果。据我在网上找到的,我们已经正确完成了所有操作,但连接仍然超时。非常感谢任何人可以提供的任何帮助。

更新:

通过消除过程,这似乎以某种方式与在开发人员机器上安装 Visual Studio 有关。

NS查找:

最小测试用例:

0 投票
1 回答
295 浏览

windows - 创建每天运行一次的 ac# 应用程序/Windows 服务

嗨,我需要创建一个每天运行一次的应用程序。该应用程序可以在用户一天内首次登录后的任何时间运行。

我的问题是,最好的方法是什么。我应该创建一个 Windows 服务或 Windows 应用程序来执行此操作吗?

另一个要求是应用程序必须每天运行一次,除非它已被卸载。

0 投票
1 回答
767 浏览

sql - SQL Server 2012 从 SQL 查询创建用户

我有一个系统用户表,每个用户都需要一个自己的数据库用户,系统用来访问数据库(不是我的想法..)。系统有自己的登录。这给我们正在测试的 SQL AlwaysOn 分布式服务器设置带来了问题,因为用户不会在数据库之间同步。因此,尽管系统创建了数据库用户,但它们不会传播到辅助节点,并且当发生故障转移时,这些用户无法登录。

这就是我想要编写一个从数据库中的表创建数据库用户的脚本的理由。那么,为什么以下工作不起作用,我怎样才能使它起作用?

目前我在'@foo'附近得到不正确的语法

0 投票
1 回答
4539 浏览

sql - Always On 可用性组中的 MSDTC

我工作的公司希望在我们支持 SQL Server 的应用程序中使用 Always on 可用性组架构。我们有 3 个数据库直接安装,其中一个是按配置分区的,我们目前使用 MSDTC 来协调这三个数据库之间的事务,即如果提交到数据库 A 和 B,并且 A 提交成功,B 上的失败意味着回滚A 和 B 而不是 B。

当我们看到这篇文章时遇到了一个问题

据我了解,这基本上意味着 MSDTC 在 Always on 可用性组模式中不受支持。我在 SQL Server 2012 中找不到替代品

所以我的问题是:

  1. 我们有哪些选择(搁置或开源产品/代码更改)?
  2. 在此设置中运行 MSDTC 的具体影响是什么(完全崩溃/丢失事务)?

在此先感谢,非常感谢您的帮助。多尔

0 投票
2 回答
7721 浏览

sql-server - SQL Server 2012 Always on 具有高日志捕获等待类型

从阅读中,我可以看到Work_Queue可以安全地忽略等待,但我没有找到太多关于logcapture_wait. 这来自 BOL,“等待日志记录可用。在等待连接生成新日志记录或读取不在缓存中的日志时等待 I/O 完成时可能发生。如果日志扫描赶上日志的末尾或正在从磁盘读取。”

两个 SQL Server 的平均磁盘秒/写入基本上为 0,所以我猜这种等待类型可以安全地忽略吗?

以下是主要的前 10 次等待:

以下是次要等待的前 10 名:

0 投票
1 回答
3090 浏览

.net - SQL Server 2012 AlwaysOn 可用性组,始终连接到主服务器

我已经配置了一个 AlwaysOn 可用性组,没有任何问题。

数据库同步镜像,两个 SQL Server 都正常工作。

我创建了一个可用性组侦听器并将主服务器配置为仅接受 ReadWrite 连接,将辅助服务器配置为仅接受 ReadOnly 连接。

在 .NET Framework 4.5 中,我使用 SqlClient.SqlConnection 连接到侦听器,这是连接字符串:

Microsoft 文档说,使用此 ConnectionString,当我使用 ReadOnly 时,将连接到辅助服务器,并且将与主服务器建立读写连接,购买我总是连接到主服务器。

使用 ReadOnly 时收到错误消息,因为主服务器不接受 ReadOnly 连接。

当我与 ReadWrite 连接时,我也连接到主服务器,这是应该的。

我已尝试连接到域名以及直接可用性组侦听器 IP 地址。

谁能告诉我我做错了什么?

谢谢你。

0 投票
1 回答
1045 浏览

php - 为什么我的 PHP 5.4 网络服务器无法使用 SQL Always On 与我的多子网故障转移集群通信?

我们最近实施了 SQL Server 2012 Always On 故障转移群集。上线时间为 2 周,并且出现了一些令人担忧的问题。以前我们处理的是同一子网中的服务器,但后来我们将服务器移动到了多个子网。既然这样做了,我们就遇到了多子网故障转移问题;http://technet.microsoft.com/en-us/library/ff878716.aspx

“在多子网配置中,网络名称的在线和离线 IP 地址都将在 DNS 服务器上注册。客户端应用程序然后从 DNS 服务器检索所有注册的 IP 地址并尝试按顺序连接到这些地址或并行。这意味着多子网故障转移中的客户端恢复时间不再取决于 DNS 更新延迟。

默认情况下,客户端会按顺序尝试 IP 地址。当客户端在其连接字符串中使用新的可选 MultiSubnetFailover=True 参数时,它将改为同时尝试 IP 地址并连接到第一个响应的服务器。这有助于在发生故障转移时最大限度地减少客户端恢复延迟。”

该问题的症状是: PHP 5.4 服务器将间歇性地无法连接。它可能工作 20 分钟,然后失败 25 分钟,然后工作 40 分钟。

我们尝试这样引入“MultiSubnetFailover”参数:

并使用明确支持多子网故障转移的 Microsoft SQL 驱动程序更新网络服务器;http://blogs.msdn.com/b/sqlphp/archive/2012/03/07/microsoft-drivers-3-0-for-php-for-sql-server-released-to-web.aspx

子网设置正确,当我提供“MultiSubnetFailover=Yes”参数时,我可以通过 SQL Server Management Studio 等其他服务正常连接,实际上区别是白天和黑夜。

任何帮助表示赞赏,这个太接近释放舒适。

编辑:实际上我错过了第二个连接字符串,但是一旦使用多子网故障转移参数配置它,错误仍然会发生;

0 投票
1 回答
2365 浏览

synchronization - SQL Server 2012 AlwaysOn 同步副本实际上不是同步读取

我正在尝试在将数据写入主副本之后从同步辅助副本中读取数据。但我的数据不存在于二级。

在数据出现在辅助节点之前,有大约 100-500 毫秒的延迟。

是否可以使辅助副本对于读取查询真正同步?

0 投票
1 回答
1276 浏览

sql-server - AlwaysOn AG 不会在重新启动 SQL Server Windows 服务时进行故障转移

我正在尝试测试我的应用程序数据库的 SQL Server AlwaysOn 可用性组行为。我已经创建了可用性组,并且能够正确地从集群管理器或 SQL Server Studio 模拟故障转移。如果重新启动服务器活动节点,也会发生故障转移。

作为最后的测试,我在活动节点上重新启动了 SQL Server 的 windows 服务。我原以为服务停止后 AG 会故障转移到辅助节点,但事实并非如此。主节点经历了服务重启。

当服务暂时关闭时,没有节点切换。这是否意味着只有在服务关闭某个阈值时才会发生故障转移?如果是这样,这个阈值是多少?

0 投票
4 回答
8247 浏览

sql-server - 使用 Multisubnetfailover=True 时的连接超时

最近我发现从我们的一个网络服务器到 MSSQL AlwaysOn 侦听器的连接失败了。侦听器有两个 IP 地址,因为它跨越子网,因此我们在连接字符串中指定 Multisubnetfailover=true。

尝试与侦听器建立连接时,出现以下错误:

我也尝试使用 SSMS 连接并遇到相同的超时问题。

我能够通过以下方式成功建立连接:

  • 无需监听器直接连接到主机
  • 直接连接到当前监听 IP 地址
  • 将连接超时增加到 200 秒
  • 删除连接字符串中的 MultiSubnetFailover 选项

尝试从其他服务器连接时,我没有遇到此问题。SQL 或 Windows 事件日志中没有错误,可帮助确定超时的原因。网络跟踪显示与当前侦听器 IP 地址的正确连接握手。两台服务器都没有启用防火墙或防病毒软件。Webserver 运行 server 2008 web edition,SQL server 运行 windows server 2012 和 sql server 2012。