Condividi tramite


Esercitazione: Configurare database con mirroring di Microsoft Fabric da Azure SQL Managed Instance

Il Mirroring in Fabric è una tecnologia aziendale SaaS basata sul cloud e zero-ETL. In questa sezione imparerai come creare un database con il mirroring di Azure SQL Managed Instance, che rappresenta una copia di sola lettura e replicata continuamente del database scelto dalla tua Azure SQL Managed Instance in OneLake.

Prerequisiti

Abilitare l'identità gestita assegnata dal sistema (SAMI) dell'istanza gestita di Azure SQL

L'identità gestita assegnata dal sistema (SAMI) del Azure SQL Managed Instance deve essere abilitata e deve essere l'identità primaria per pubblicare i dati in Fabric OneLake.

  1. Per configurare o verificare che SAMI sia abilitato, passare al SQL Managed Instance nel portale di Azure. In Sicurezza nel menu della risorsa selezionare Identità.
  2. In Identità gestita assegnata dal sistema selezionare Stato su .
  3. La SAMI deve essere l'identità primaria. Verificare che SAMI sia l'identità primaria con la query T-SQL seguente: SELECT * FROM sys.dm_server_managed_identities;

Database principale per Fabric

Successivamente, è necessario creare un modo per consentire al servizio Fabric di connettersi al Azure SQL Managed Instance.

A tale scopo, è possibile usare un account di accesso e un utente di database mappato. Seguendo il principio dei privilegi minimi per la sicurezza, è consigliabile concedere solo l'autorizzazione CONTROL DATABASE nel database di cui si intende eseguire il mirroring.

Utilizzare un account di accesso e utente del database mappato

  1. Connettersi al Azure SQL Managed Instance usando SQL Server Management Studio (SSMS) o l'estensione MSSQL per Visual Studio Code. Connettersi al database master.

  2. Creare un account di accesso al server e assegnare le autorizzazioni appropriate.

    Le autorizzazioni necessarie per l'account di accesso di Fabric sono:

    • Le autorizzazioni seguenti nel database utente:

      • SELECT
      • ALTERARE QUALSIASI SPECCHIO ESTERNO
      • VISUALIZZARE LO STATO DELLE PRESTAZIONI DEL DATABASE
      • VISUALIZZARE LO STATO DI SICUREZZA DEL DATABASE
    • Creare un login autenticato SQL. È possibile scegliere qualsiasi nome per questo account di accesso, sostituirlo con lo script seguente per <fabric_login>. Specificare una password complessa. Eseguire il seguente script T-SQL nel database master:

    CREATE LOGIN <fabric_login> WITH PASSWORD = '<strong password>';
    
    • In alternativa, creare un account di accesso autenticato Microsoft Entra ID da un account esistente. Eseguire il seguente script T-SQL nel database master:
    CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER;
    
  3. Cambiare lo scope della query sul database di cui si vuole eseguire il mirroring. Sostituire il nome del database per <mirroring_source_database> ed eseguire il T-SQL seguente:

    USE [<mirroring_source_database>];
    
  4. Creare un utente del database connesso all'account di accesso. Sostituire il nome di un nuovo utente del database a questo scopo per <fabric_user>:

    CREATE USER [fabric_user] FOR LOGIN [fabric_login];
    GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW DATABASE PERFORMANCE STATE, VIEW DATABASE SECURITY STATE TO [fabric_user];
    
    • In alternativa, per un accesso autenticato Microsoft Entra:
    CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com];
    GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW DATABASE PERFORMANCE STATE, VIEW DATABASE SECURITY STATE TO [bob@contoso.com];
    

Creare un database in modalità mirroring per un'istanza gestita di Azure SQL

  1. Aprire il portale di Fabric.
  2. Usare un’area di lavoro esistente, oppure creare una nuova area di lavoro.
  3. Passare al riquadro Crea . Selezionare l'icona Crea .
  4. Scorrere fino alla sezione Data Warehouse e quindi selezionare Mirrored Azure SQL Managed Instance.

Connettersi al Azure SQL Managed Instance

Per abilitare il mirroring, è necessario connettersi al Azure SQL Managed Instance da Fabric per avviare la connessione tra SQL Managed Instance e Fabric. I passaggi seguenti illustrano il processo di creazione della connessione al Azure SQL Managed Instance:

  1. In Nuova origini selezionare Azure SQL Managed Instance. In alternativa, selezionare una connessione Azure SQL Managed Instance esistente dal catalogo OneLake.
    1. Non è possibile usare connessioni Azure SQL Managed Instance esistenti con tipo "SQL Server" (tipo di connessione generica). Per il mirroring dei dati di Azure SQL Managed Instance sono supportate solo le connessioni con tipo di connessione "SQL Managed Instance".
  2. Se è stata selezionata Nuova connessione, immettere i dettagli della connessione al Azure SQL Managed Instance. È necessario connettersi a un database specifico, non è possibile configurare il mirroring per l'intera istanza gestita di SQL e per tutti i relativi database.
    • Server: è possibile trovare la pagina Server passando al campo Azure SQL Managed Instance Networking nel portale di Azure (menu Sicurezza) e esaminando il campo Endpoint pubblico. Ad esempio: <managed_instance_name>.public.<dns_zone>.database.windows.net,3342.
    • Database: immettere il nome del database di cui si desidera eseguire il mirroring.
    • Connessione: creare una nuova connessione.
    • Nome connessione: viene specificato un nome automatico. È possibile modificarlo per facilitare la ricerca di questa connessione al database dell'istanza gestita di SQL in un secondo momento, se necessario.
    • Gateway dati: selezionare il valore predefinito (Nessuno) o il nome del gateway dati di rete virtuale o del gateway dati locale configurato in base allo scenario.
    • Tipo di autenticazione:
      • Basic (autenticazione SQL): specificare il nome utente e la password.
      • Account organizzazione (Microsoft Entra ID)
      • Entità servizio: Specificare l'ID tenant dell'entità servizio, l'ID client e il segreto del client.
  3. Selezionare Connetti.

Avviare il processo di mirroring

  1. La schermata Configura mirroring consente di eseguire il mirroring di tutti i dati nel database, per impostazione predefinita.

    • Eseguire il mirroring di tutti i dati significa che tutte le nuove tabelle create dopo l'avvio del mirroring verranno sottoposte a mirroring.

    • Facoltativamente, scegliere solo determinati oggetti su cui eseguire il mirroring. Disabilitare l'opzione Specchia tutti i dati e quindi selezionare singole tabelle dal database.

    • Se non è possibile eseguire il mirroring delle tabelle, vengono visualizzate un'icona di errore e un testo di spiegazione pertinente. Analogamente, se le tabelle possono eseguire il mirroring solo con limitazioni, viene visualizzata un'icona di avviso con testo di spiegazione pertinente.

    Per questa esercitazione, selezioniamo l'opzione Specchia tutti i dati.

  2. Nella schermata successiva, assegnare un nome all'elemento di destinazione e selezionare Crea database con sincronizzazione. Ora attendi un minuto o due affinché Fabric provveda a tutto per te.

  3. Dopo 2-5 minuti, selezionare Monitoraggio replica per visualizzare lo stato.

  4. Dopo alcuni minuti, lo stato dovrebbe passare a In esecuzione, il che significa che la sincronizzazione delle tabelle è in corso.

    Se non vengono visualizzate le tabelle e lo stato di replica corrispondente, attendere alcuni secondi e quindi aggiornare il pannello.

  5. Al termine della copia iniziale delle tabelle, viene visualizzata una data nella colonna Ultimo aggiornamento .

  6. Ora che i dati sono operativi, in Fabric esistono diversi scenari di analisi disponibili.

Importante

Qualsiasi sicurezza granulare stabilita nel database sorgente deve essere riconfigurata nel database specchiato in Microsoft Fabric.

Monitorare il mirroring di Fabric

Dopo aver configurato il mirroring, si viene indirizzati alla pagina Stato mirroring . Qui è possibile monitorare l’attuale stato della replica.

Questi sono gli stati di replica:

  • Per il monitoraggio generale a livello di database:

    • In esecuzione: la replica è attualmente in corso con l'inserimento di dati di istantanee e modifiche in OneLake.
    • Esecuzione con avviso: la replica è in esecuzione, con errori temporanei
    • Arrestando/Arrestato: la replica è stata arrestata.
    • Errore: errore irreversibile nella replica che non può essere ripristinato.
  • Per il monitoraggio a livello di tabella:

    • Esecuzione – I dati della tabella vengono replicati correttamente nel magazzino dati.
    • Esecuzione con avviso: avviso di errore non critico nella replica dei dati dalla tabella.
    • Interruzione/Interrotto - La replica è stata fermata
    • Errore: errore irreversibile nella replica per la tabella.

Se la sincronizzazione iniziale viene completata, accanto al nome della tabella viene visualizzato un timestamp Ultimo completamento . Questo timestamp indica l'ora dell'ultima verifica della presenza di modifiche da parte di Fabric nella tabella.

Si noti anche la colonna Righe replicate. Conta tutte le righe replicate della tabella. Ogni volta che viene replicata una riga, viene conteggiata di nuovo. Ciò significa che, ad esempio, l'inserimento di una riga con chiave primaria =1 nell'origine aumenta il conteggio "Righe replicate" di uno. Se si aggiorna la riga con la stessa chiave primaria, viene replicata nuovamente in Fabric e il conteggio delle righe aumenta di uno, anche se si tratta della stessa riga replicata di nuovo. Fabric conta tutte le repliche eseguite nella riga, inclusi inserimenti, eliminazioni, aggiornamenti.

La schermata Monitoraggio replica riflette anche eventuali errori e avvisi relativi al processo di mirroring delle tabelle. Se la tabella contiene tipi di colonna non supportati o se l'intera tabella non è supportata (ad esempio, in memoria o indici columnstore), viene visualizzata una notifica sulla limitazione in questa schermata. Per maggiori informazioni e dettagli sugli stati di replica, vedere Monitorare la replica del database di Fabric.