sys.dm_hs_database_replicas (Transact-SQL)

gäller för:Azure SQL Database

Funktionen sys.dm_hs_database_replicas för dynamisk hantering (DMF) returnerar information om sekundära Azure SQL Database Hyperscale-repliker av en viss Hyperskala-databas.

Syntax

sys.dm_hs_database_replicas ( 
{ database_id | NULL }                                     
)                             

Arguments

database_id

database_id är ett heltal som representerar databas-ID:t utan standardvärde. Giltiga indata är antingen ett databas-ID eller NULL.

När en database_id anges sys.dm_hs_database_replicas returnerar en rad för den specifika databasen.

När det inte anges eller när NULL anges returnerar en rad för den aktuella databasen för en enskild databas. För en databas i en elastisk pool returnerar rader för alla databaser i poolen där anroparen har tillräcklig behörighet.

Den inbyggda funktionen DB_ID kan anges.

Tabellen returnerades

Kolumnnamn Datatyp Description
replica_id uniqueidentifier Identifierare för repliken. Kan inte vara null.
replica_server_name sysname Namnet på den logiska server där repliken finns. Kan inte vara null.
replica_database_name sysname Namnet på replikdatabasen. Kan inte vara null.
is_local bit Om replikdatabasen är lokal:
1 = Replikdatabasen är den som du är ansluten till när du frågar sys.dm_hs_database_replicas.
0 = Replikdatabasen är inte den du är ansluten till.
replica_role tinyint Replikroll:
0 = Primär
1 = Sekundär hög tillgänglighet
2 = Vidarebefordrare för geo-replikering
3 = Namngiven replik. Kan inte vara null.
replica_role_desc nvarchar(256) Primär
Sekundär hög tillgänglighet
Vidarebefordrare för geo-replikering
Namngiven replik. </ br></ br> Är inte nullable.
local_database_id Int Identifierare för databasen.
I Azure SQL Database är värdena unika i en enskild databas eller elastisk pool, men inte inom den logiska servern.
parent_replica_id uniqueidentifier Gäller endast för repliker med hög tillgänglighet.
Identifierare för den överordnade repliken (till exempel primär, geo-vidarebefordrare eller namngiven replik som har en HA-replik). Nullbar.

Anmärkningar

Den sys.dm_hs_database_replicas dynamiska hanteringsfunktionen gäller för närvarande endast för Azure SQL Database Hyperscale-nivån.

Du kan lägga till sekundära repliker till en geo-sekundär replik av den primära databasen, sys.dm_hs_database_replicas men returnerar inte rader för de sekundära repliker som läggs till under den geo-sekundära repliken när du frågar på den primära repliken. Du bör fråga sys.dm_hs_database_replicas när du är ansluten till en geo-sekundär replik för att visa en lista över de sekundära repliker som lagts till under den.

Permissions

Denna dynamiska hanteringsfunktion kräver behörigheten VIEWDATABASE PERFORMANCE STATE. Mer information finns i Vyer för dynamisk hantering av system. För att söka en poolad databas krävs behörigheten VIEW SERVER STATE. Om anroparen har VIEWDATABASE PERFORMANCE STATE-behörighet returneras rader för databaserna där denna behörighet hålls.

Examples

A. Returnera primär replik och alla sekundära repliker i en databas som skapats på Hyperskala-nivån

I följande exempel returneras en rad för varje sekundär replik som läggs till i Hyperskala-databasen.

SELECT replica_role_desc, replica_server_name, replica_id
FROM sys.dm_hs_database_replicas(DB_ID(N'Contosodb'));