小编MrT*_*TCS的帖子

跳过有 GO 的部分

我正在编写一个可以在新服务器上运行的脚本以进行一些初始配置。我希望能够跳过某些部分,但我遇到的问题是所需的“GO”。由于 GO,我无法将我的代码段包装在 IF 语句中。例如

:setvar EnableDBMail 0

IF ($(EnableDBMail) = 1 )
BEGIN
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Database Mail XPs', 1;
GO
RECONFIGURE
GO

END
....etc
Run Code Online (Sandbox Code Playgroud)

问题是这行不通,因为您必须使用 GO。还有另一种方法吗?我试过搜索,但还没有找到任何东西。

sql-server sqlcmd sql-server-2012

5
推荐指数
2
解决办法
732
查看次数

Powershell 缺少 FCI 的集群名称

我正在运行以下简单的 Powershell 命令。

$Server = New-Object ('Microsoft.SqlServer.Management.Smo.Server') 'SerName'
$Server | SELECT *
Run Code Online (Sandbox Code Playgroud)

对于 FCI 集群,该ClusterName值始终为空,并且ClusterQuorumStateClusterQuorumType始终为NotApplicableIsClustered虽然设置为 True。

如果我针对可用性组运行它,我会返回集群名称和其他两个属性的正确值。

Powershell 中有没有办法获取 FCI 实例的集群名称?我可以使用另一个 cmdlet?

sql-server clustering powershell

5
推荐指数
1
解决办法
302
查看次数

审计/日志帮助

我正在处理开始记录一些额外数据以符合 PCI 要求的请求。我需要在一组表上记录谁、何时以及发生了什么变化。我设置了 SQL 审计,它可以正常工作,除了正在更改的值作为 @1、@2 等而不是实际数据通过这一事实。记录所需信息的其他选项是什么?CDC 不会跟踪谁进行了更改。

它目前在 SQL Server 2012 上运行,但如果能提供更好的解决方案,则可能升级到 2014。

谢谢,蒂姆

sql-server audit

2
推荐指数
1
解决办法
85
查看次数