Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Automatic initialization of SQL Server 2017 AlwaysOn AG (8)

2025-03-28 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >

Share

Shulou(Shulou.com)06/01 Report--

Monitor automatic seed settings

System dynamic management view

Sys.dm_hadr_automatic_seeding

On the master copy, query sys.dm_hadr_automatic_seeding to check the status of the automatic seed setting process. For each seed setup process, the view returns a row. For example:

SELECT start_time, completion_time, is_source, current_state, failure_state, failure_state_desc, error_codeFROM sys.dm_hadr_automatic_seeding

Sys.dm_hadr_physical_seeding_stats

On the master copy, query sys.dm_hadr_physical_seeding_stats DMV to see the physical statistics for each seed setup process that is currently running. While the seed setting is running, the following query returns multiple rows:

SELECT local_database_name, role_desc, internal_state_desc, transfer_rate_bytes_per_second, transferred_size_bytes, database_size_bytes, start_time_utc, end_time_utc, estimate_time_complete_utc, total_disk_io_wait_time_ms, total_network_wait_time_ms, is_compression_enabledFROM sys.dm_hadr_physical_seeding_stats error log

Extended event

The following table lists the extension events related to automatic seed settings:

Attribute

Description

Hadr_db_manager_seeding_request_msg

Seed setting request message

Hadr_physical_seeding_backup_state_change

Physical seed setting backup status change

Hadr_physical_seeding_restore_state_change

Physical seed setting restore end status change

Hadr_physical_seeding_forwarder_state_change

Physical seed setting transponder state change

Hadr_physical_seeding_forwarder_target_state_change

Physical seed setting transponder destination state change

Hadr_physical_seeding_submit_callback

Physical seed settings submit callback event

Hadr_physical_seeding_failure

Physical seed setting failure event

Hadr_physical_seeding_progress

Physical seed setting progress event

Hadr_physical_seeding_schedule_long_task_failure

Physical seed setting schedule long task failure event

Hadr_automatic_seeding_start

Occurs when an automatic seed setting operation is submitted

Hadr_automatic_seeding_state_transition

Occurs when the automatic seed setting operation changes the state

Hadr_automatic_seeding_success

Occurs when the automatic seed setting operation is successful

Hadr_automatic_seeding_failure

Occurs when an automatic seed setting operation fails

Hadr_automatic_seeding_timeout

Occurs when the automatic seed setting operation times out

Create an extension event

CREATE EVENT SESSION [DirectSeed] ON SERVERADD EVENT sqlserver.hadr_ar_controller_debug (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_automatic_seeding_failure (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_automatic_seeding_start (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)) ADD EVENT sqlserver.hadr_automatic_seeding_state_transition (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_automatic_seeding_success (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_automatic_seeding_timeout (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)) ADD TARGET package0.event_file (SET filename=N'C:\ XE\ DirectSeed.xel' Max_rollover_files= (10) GO CREATE EVENT SESSION [PhysicalSeed] ON SERVERADD EVENT sqlserver.hadr_physical_seeding_backup_state_change (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_physical_seeding_failure (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_physical_seeding_forwarder_state_change (ACTION (sqlserver.database_id,sqlserver.sql_text)) Sqlserver.tsql_stack), ADD EVENT sqlserver.hadr_physical_seeding_forwarder_target_state_change (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_physical_seeding_progress (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_physical_seeding_restore_state_change (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)) ADD EVENT sqlserver.hadr_physical_seeding_schedule_long_task_failure (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)), ADD EVENT sqlserver.hadr_physical_seeding_submit_callback (ACTION (sqlserver.database_id,sqlserver.sql_text,sqlserver.tsql_stack)) ADD TARGET package0.event_file (SET filename=N'C:\ XE\ PhysicalSeed',max_rollover_files= (10)) GO ALTER EVENT SESSION [DirectSeed] ON SERVER STATE = STARTALTER EVENT SESSION [PhysicalSeed] ON SERVER STATE = START

Analyze extended events

IF OBJECT_ID ('tempdb..#DirectSeed') IS NOT NULL DROP TABLE [# DirectSeed]; CREATE TABLE [# DirectSeed] ([ID] INT IDENTITY (1,1) NOT NULL, [EventXML] XML, CONSTRAINT [PK_DirectSeed] PRIMARY KEY CLUSTERED ([ID])) INSERT [# DirectSeed] ([EventXML]) SELECT CONVERT (XML, [event_data]) AS [EventXML] FROM [sys]. [fn_xe_file_target_read_file] ('C:\ XE\ DirectSeed*.xel', NULL, NULL, NULL) CREATE PRIMARY XML INDEX [DirectSeedXML] ON [# DirectSeed] ([EventXML]); CREATE XML INDEX [DirectSeedXMLPath] ON [# DirectSeed] ([EventXML]) USING XML INDEX [DirectSeedXML] FOR VALUE Select [DS] .[ EventXML] .[ value] ('(/ event/@name) [1]', 'VARCHAR (MAX)') AS [event_name], [ds]. [EventXML]. [value] ('(/ event/@timestamp) [1]', 'DATETIME2 (7)') AS [event_time], [ds]. [value] ('(/ event/data [@ name= "debug_message"] / value) [1]' 'VARCHAR (8000)') AS [debug_message], / * hadr_automatic_seeding_state_transition*/ [DS]. [EventXML]. [value] ('(/ event/data [@ name= "previous_state"] / value) [1]', 'VARCHAR (8000)') AS [previous_state], [ds]. [EventXML]. [value] ('(/ event/data [@ name= "current_state"] / value) [1]', 'VARCHAR (8000)') AS [current_state] / * hadr_automatic_seeding_start*/ [DS] .[ EventXML] .[ value] ('(/ event/data [@ name= "operation_attempt_number"] / value) [1]', 'BIGINT') as [operation_attempt_number], [ds]. [value] (' (/ event/data [@ name= "ag_id"] / value) [1]', 'VARCHAR (8000)') AS [ag_id] [ds]. [EventXML]. [value] ('(/ event/data [@ name= "ag_db_id"] / value) [1]', 'VARCHAR (8000)') AS [ag_id], [ds]. [EventXML]. [value] ('(/ event/data [@ name= "ag_remote_replica_id"] / value) [1]', 'VARCHAR (8000)') AS [ag_remote_replica_id] / * hadr_automatic_seeding_success*/ [DS] .[ value] ('(/ event/data [@ name= "required_seeding"] / value) [1]', 'VARCHAR (8000)') AS [value], / * hadr_automatic_seeding_timeout*/ [DS] .[ EventXML] .[ value] ('(/ event/data [@ name= "timeout_ms"] / value) [1]', 'BIGINT') as [value] / * hadr_automatic_seeding_failure*/ [DS] .[ EventXML] .[ value] ('(/ event/data [@ name= "failure_state"] / value) [1]', 'BIGINT') as [failure_state], [ds]. [value] (' (/ event/data [@ name= "failure_state_desc"] / value) [1]' 'VARCHAR (8000)') AS [failure_state_desc] FROM [# DirectSeed] AS [ds] ORDER BY [ds]. [value] ('(/ event/@timestamp) [1]', 'DATETIME2 (7)') DESC

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Database

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report