Condividi tramite


Gestire Collegamento ad Azure Synapse per SQL Server e il database SQL di Azure

Si applica a: SQL Server 2022 (16.x) Database SQL di Azure

Questo articolo fornisce informazioni dettagliate sul monitoraggio e sulla gestione del feed di modifiche di Collegamento ad Azure Synapse per SQL con T-SQL.

La funzionalità Collegamento ad Azure Synapse per il database SQL di Azure è completamente gestita, incluso il provisioning della zona di destinazione, e usa processi di rilevamento delle modifiche simili come descritto in questo articolo. Per altre informazioni, vedere Collegamento a Synapse per il database SQL di Azure.

Per SQL Server, la zona di destinazione è gestita dal cliente e visibile, ma non è consigliabile o supportato l'uso o la modifica dei file nella zona di destinazione.

Attualmente, solo un membro del ruolo del server sysadmin in SQL Server o del ruolo del database db_owner può eseguire queste procedure.

SQL Server o il database Azure SQL manterrà i metadati specifici di ogni gruppo di tabelle.

Nota

L'abilitazione di Collegamento ad Azure Synapse per SQL creerà un utente del database changefeed, uno schema changefeed e diverse tabelle all'interno dello schema changefeed nel database di origine. Non modificare nessuno di questi oggetti: sono gestiti dal sistema.

Gli oggetti di sistema seguenti consentono di eseguire query sullo stato della funzionalità Collegamento ad Azure Synapse per SQL dal database di origine.

Visualizzare la configurazione

Per esaminare la configurazione corrente del collegamento, eseguire la stored procedure di sistema sys.sp_help_change_feed.

EXECUTE sys.sp_help_change_feed

Esaminare gli errori del feed di modifiche

Per esaminare gli errori nel feed di modifiche di Collegamento ad Azure Synapse, usare la vista a gestione dinamica sys.dm_change_feed_errors. Questa DMV mostrerà gli errori delle ultime 32 sessioni. Una sessione può includere più errori, ad esempio tentativi di ripetizione delle operazioni in caso di errori della zona di destinazione. Questa DMV mostrerà anche gli errori riscontrati durante il processo di pubblicazione di snapshot e modifiche incrementali.

SELECT * FROM sys.dm_change_feed_errors;

Visualizzare l'attività corrente

Per visualizzare l'attività corrente, usare la vista a gestione dinamica sys.dm_change_feed_log_scan_sessions, che restituisce l'attività per il feed di modifiche di Collegamento ad Azure Synapse per SQL.

SELECT * FROM sys.dm_change_feed_log_scan_sessions;

Abilitazione del feed di modifiche e creazione di oggetti del feed di modifiche

Le stored procedure di sistema sys.sp_change_feed_enable_table, sys.sp_change_feed_enable_db, sys.sp_change_feed_create_table_group non sono documentate e sono destinate solo all'uso interno. Usare sempre Synapse Studio nel portale di Azure per creare e configurare Collegamento ad Azure Synapse per SQL Server 2022 (16.x) e il database SQL di Azure. Le stored procedure seguenti per la rimozione e la disabilitazione vengono fornite per rimuovere Collegamento ad Azure Synapse nel caso in cui Azure Synapse Studio sia stato rimosso o non sia accessibile.

Disabilitare il feed di modifiche per il database

Per disabilitare il feed di modifiche a livello di database e successivamente i metadati per tutte le tabelle associate, usare la stored procedure di sistema sys.sp_change_feed_disable_db.

Dopo la disabilitazione del feed di modifiche con i gruppi di tabelle attivi, tutte le connessioni e le utilità di pianificazione verranno arrestate immediatamente/forzatamente senza attendere il completamento delle operazioni correnti. Non è possibile creare nuovi gruppi di tabelle del feed di modifiche per il database e tutti i metadati esistenti che descrivono i gruppi di tabelle verranno eliminati. Con la riabilitazione del feed di modifiche verranno inizializzati di nuovo tutti i gruppi di tabelle e verrà ripetuto il seeding di tutti i dati.

EXECUTE sys.sp_change_feed_disable_db 
GO 

Rimuovere il gruppo di tabelle del feed di modifiche

È consigliabile usare Azure Synapse Studio nel portale di Azure per configurare e gestire Collegamento ad Azure Synapse.

Per rimuovere i metadati del feed di modifiche per un gruppo di tabelle, usare la stored procedure di sistema sys.sp_change_feed_drop_table_group.

Se il feed di modifiche di un gruppo di tabelle viene eliminato sul lato di SQL Server o del database SQL di Azure, tutte le attività di replica per le singole tabelle del feed di modifiche associate a questo gruppo di tabelle verranno arrestate. Verranno eliminati anche tutti i metadati associati.

EXECUTE sys.sp_change_feed_drop_table_group
      @table_group_id uniqueidentifier 
GO

Rimuovere la tabella del feed di modifiche

È consigliabile usare Azure Synapse Studio nel portale di Azure per configurare e gestire Collegamento ad Azure Synapse.

Per rimuovere una tabella del feed di modifiche da un gruppo di tabelle del feed di modifiche, usare la stored procedure di sistema sys.sp_change_feed_disable_table.

Quando si chiama sys.sp_change_feed_disable_table, la pubblicazione delle modifiche per questa tabella verrà arrestata immediatamente. Le modifiche analizzate ma non pubblicate verranno ignorate. Non è possibile garantire che le modifiche più recenti vengano pubblicate e sincronizzate in Azure Synapse. Per garantire la sincronizzazione tra origine e destinazione fino a un determinato momento nel tempo, verificare l'ora di commit dell'ultima transazione nella destinazione e quindi chiamare questa procedura.

EXECUTE sys.sp_change_feed_disable_table
    @table_group_id uniqueidentifier,
    @table_id uniqueidentifier
GO

Vedi anche

Passaggi successivi