下面是MSDN關于SYS.dm_hadr_instance_node_map 的解釋,我就不在翻譯了
For every instance of SQL Server that hosts an availability replica that is joined to its AlwaysOn availability group, returns the name of the Windows Server Failover Clustering (WSFC) node that hosts the server instance. This dynamic management view has the following uses:
•This dynamic management view is useful for detecting an availability group with multiple availability replicas that are hosted on the same WSFC node, which is an unsupported configuration that could occur after an FCI failover if the availability group is incorrectly configured. For more information, see Failover Clustering and AlwaysOn Availability Groups (SQL Server).
•When multiple SQL Server instances are hosted on the same WSFC node, the Resource DLL uses this dynamic management view to determine the instance of SQL Server to connect to.
舉例來說
Env
===
Nodes:
SQL108W2K8R21
SQL108W2K8R22
SQL108W2K8R23
Default instance
SQL Server 2012 SP1 RTM
Availability group :agTest1 and agTest2
AGTest1:
SQL108W2K8R21
SQL108W2K8R22
SQL108W2K8R23
AGTest2:
SQL108W2K8R21
SQL108W2K8R22
那么SYS.dm_hadr_instance_node_map 返回值如下
相應的ag_resource_id我們可以從sys.dm_hadr_name_id_map找到
DMV SYS.dm_hadr_instance_node_map會從下面的注冊表中取值
如果您的DMV返回NULL,請檢查注冊表HKEY_LOCAL_MACHINE/Cluster/HadrAgNameToIdMap,如果發現有legacy/orphan的鍵值存在,將他們刪除。為了以防萬一,請先備份。
之后再次運行DMV就可以了
新聞熱點
疑難解答