我正在尝试设置 SQL 代理作业,该作业仅在它是故障转移组的 Azure SQL MI 的主副本时才会执行。
sys.dm_hadr_database_replica_states
我正在尝试使用where获取主副本,is_primary_replica =1
但是当我在不同区域的 SQL MI 上运行它时,它也返回值 1。
我正在使用dbo.fn_hadr_group_is_primary(@AGName)=1
本地函数,因此寻找与 Azure SQL MI 类似的函数。
我正在尝试设置 SQL 代理作业,该作业仅在它是故障转移组的 Azure SQL MI 的主副本时才会执行。
sys.dm_hadr_database_replica_states
我正在尝试使用where获取主副本,is_primary_replica =1
但是当我在不同区域的 SQL MI 上运行它时,它也返回值 1。
我正在使用dbo.fn_hadr_group_is_primary(@AGName)=1
本地函数,因此寻找与 Azure SQL MI 类似的函数。
我正在尝试复制每个证书编号值的最新记录。我们每个证书都有多个文档,并尝试获取每个证书的最新记录并将其复制到新集合中。
数据如下:
{ "_id": ..., "certnumber":"123456", "createtime": "2024-02-03T16:42:20.324Z", "company": "A" ,.....}
{ "_id": ..., "certnumber":"123456", "createtime": "2024-02-03T16:32:20.324Z", "company": "A" ,.....}
{ "_id": ..., "certnumber":"123456", "createtime": "2024-02-02T14:28:20.324Z", "company": "A" ,.....}
{ "_id": ..., "certnumber":"123456", "createtime": "2024-02-02T13:22:20.324Z", "company": "A" ,.....}
{ "_id": ..., "certnumber":"654321", "createtime": "2024-02-05T17:42:20.324Z", "company": "B" ,.....}
{ "_id": ..., "certnumber":"654321", "createtime": "2024-02-05T16:42:20.324Z", "company": "B" ,.....}
{ "_id": ..., "certnumber":"654321", "createtime": "2024-02-03T15:32:20.324Z", "company": "B" ,.....}
{ "_id": ..., "certnumber":"654321", "createtime": "2024-02-03T14:22:20.324Z", "company": "B" ,.....}
我尝试使用以下命令收集最新记录,它有效,但只返回 2 个字段。如何提取整个文档而不是仅提取 2 个字段?
db.collectionname.aggregate(
[
{ $sort: { certnumber: 1, createtime: 1} },
{
$group:
{
_id: {certnumber : "$certnumber" },
updatedDate: { $last: "$createtime" }
}
},
],
)
我们正在使用第 3 方工具来备份 SQL Server 数据库。我希望设置一个警报,该警报会在进行临时备份时生成,并且它不是 copy_only。我们正在使用第 3 方监控工具,我想使用此第 3 方工具设置警报,该工具使用 T-SQL 脚本提取信息。
每当 T-SQL 查询返回结果 0 或 1 如果在过去 1 小时内进行了临时备份并且它不是 copy_only 数据库备份,则应生成警报
我正在数据域上备份数据库,但是我必须使用以下命令删除过期的备份。这是一个用于 Microsoft sql server 的 emc databoost 代理应用程序。
我正在尝试将命令转换为 powershell,以便我可以运行该命令以循环删除多个客户端的过期备份。这样我就可以避免在每个单独的客户端上运行命令。
我创建了以下脚本并$clientname
进行了硬编码,但我想$clientname
在循环中传递多个服务器名称。
$FileExe = "C:\..\bin\ddbmexptool.exe"
$dbtype = "mssql"
$dduser = "DDBOOST_USER=dduser"
$ddhostpath = "DEVICE_PATH=DDHOSTMSSQL"
$devicehostname = "DEVICE_HOST=ddhost.domain.com"
$clientname = "CLIENT=server1.domain.com"
& $FileExe -n $dbtype -a $dduser -a $ddhostpath -a $ddhostpath -a $devicehostname -a $clientname -b "6 weeks ago" -e "2 weeks ago"