Jaa kautta


Fabric-peilattujen tietokantojen vianmääritys Azure SQL Managed Instance

Tässä artikkelissa käsitellään Azure SQL Managed Instancen peilauksen vianmääritysvaiheita.

Fabric-kapasiteetin tai työtilan muutokset

Kankaan kapasiteetin tai työtilan muutokset voivat vaikuttaa peilaukseen. Lisätietoja on Fabric-kapasiteetin muutosten peilauksen vaikutuksissa.

Azure SQL Managed Instance troubleshooting

Syy Tulos Suositeltu ratkaisu
Työtila poistettu Peilaus pysähtyy automaattisesti ja poistaa muutossyötteen käytöstä Azure SQL Managed Instance Jos peilaus on edelleen aktiivinen Azure SQL Managed Instancessa, suorita seuraava tallennettu menettely jokaiselle asiaan vaikuttavalle tietokannalle Azure SQL Managed Instancessasi: exec sp_change_feed_disable_db;.
Jatkuvat virheet Peilaus on poistettu käytöstä kyseiselle tietokannalle Jotta laskentaresurssisi eivät kärsi ja suojataksesi lähdetietokantasi Azure SQL Managed Instancessa, peilaus poistetaan käytöstä pysyvien virheiden kohdalla. Tarkista sys.dm_change_feed_errors ja korjaa taustalla olevat virheet ennen kuin otat tietokannan uudelleen käyttöön peilausta varten.
"Käyttäjät voivat käyttää OneLakeen tallennettuja tietoja, kun Fabricin ulkoiset sovellukset" -asetus on poistettu käytöstä "Replikointi – taulukot eivät voi saavuttaa replikoinnin tilaa" Ota vuokraaja-asetus käyttöön Käyttäjät voivat käyttää OneLakeen tallennettuja tietoja Fabricin ulkoisilla sovelluksilla.

T-SQL-kyselyt vianmääritystä varten

Jos sinulla on peilausongelmia, suorita seuraavat tietokantatason tarkistukset käyttämällä dynaamisia hallintanäkymiä (DMV) ja tallennettuja menettelyjä määrityksen vahvistamiseksi.

  1. Suorita seuraava kysely sen tarkistamiseksi, työnkulkuun tehdyt muutokset:

    SELECT * FROM sys.dm_change_feed_log_scan_sessions;
    
  2. sys.dm_change_feed_log_scan_sessions Jos DMV ei näytä lisäävän käsittelyn edistymisen edistymistä, suorita seuraava T-SQL-kysely, jotta voit tarkistaa, onko raportoitu ongelmia:

    SELECT * FROM sys.dm_change_feed_errors;
    
  3. Jos ongelmia ei ole raportoitu, suorita seuraava tallennettu toimintosarja ja tarkista peilatun Azure SQL Managed Instance nykyinen määritys. Varmista, että se on otettu käyttöön oikein.

    EXEC sp_help_change_feed;
    

    Tässä etsittävät avainsarakkeet ovat ja table_namestate. Mikä tahansa arvo paitsi 4 ilmaisee mahdollista ongelmaa. (Taulukoiden ei pitäisi istua liian kauan muissa tiloissa kuin 4)

  4. Jos replikointi ei vieläkään toimi, varmista, että oikealla SAMI-objektilla on käyttöoikeudet (katso SAMI-käyttöoikeudet).

    1. Valitse Fabric-portaalissa "..." Kolme pistettä -asetus peilatussa tietokantakohteessa.
    2. Valitse Hallitse käyttöoikeuksia -vaihtoehto.
    3. Varmista, että Azure SQL Managed Instance nimessä on luku- ja kirjoitusoikeudet.
    4. Varmista, että näkyviin tuleva AppId vastaa Azure SQL Managed Instance SAMI:n tunnusta.
  5. Ota yhteyttä tukeen , jos vianmääritys on tarpeen.

Hallitut käyttäjätiedot

Azure SQL Managed Instance System Assigned Managed Identity (SAMI) on otettava käyttöön, ja sen on oltava ensisijainen käyttäjätieto.

Jos SAMI-asetuksen tila on käyttöönoton jälkeen joko poistettu käytöstä tai alun perin käytössä, sitten poistettu käytöstä ja otettu sitten uudelleen käyttöön, Azure SQL Managed Instancen peilaus Fabric OneLakeen epäonnistuu. SAMI uudelleenkäyttöönoton jälkeen ei ole sama identiteetti kuin ennen käytöstä poistamista. Siksi sinun on myönnettävä uudelle SAMI-käyttöoikeudelle Fabric-työtilan käyttöoikeudet.

SAMI:n on oltava ensisijainen käyttäjätieto. Varmista, että SAMI on ensisijainen identiteetti seuraavalla SQL:llä: SELECT * FROM sys.dm_server_managed_identities;

Käyttäjän määrittämää hallittua käyttäjätietoa (UAMI) ei tueta. Jos lisäät UAMI:n, siitä tulee ensisijainen identiteetti, joka korvaa SAMI:n ensisijaisena. Tämä aiheuttaa replikoinnin epäonnistumisen. Ratkaista:

  • Poista kaikki UAMI:t. Varmista, että SAMI on käytössä.

SAMI-käyttöoikeudet

Azure SQL Managed Instance System Assigned Managed Identity (SAMI) -käyttäjätiedoilla on oltava luku - ja kirjoitusoikeudet peilatussa tietokantakohteessa Microsoft Fabricissa. Kun luot peilatun tietokannan Fabric-portaalista, käyttöoikeus myönnetään automaattisesti. Jos kohtaat virheen Unable to grant required permission to the source server. User does not have permission to reshare asennuksen aikana, varmista, että sinulla on työtilassa jäsen- tai järjestelmänvalvojan rooli, jolla on riittävät oikeudet. Kun luot peilatun tietokannan ohjelmointirajapinnan avulla , varmista, että myönnät käyttöoikeuden nimenomaisesti.

Älä poista PEILATUN Fabric-tietokantakohteen SAMI-luku - ja kirjoitusoikeuksia . Jos poistat käyttöoikeudet vahingossa, Azure SQL Managed Instance peilaus ei toimi odotetulla tavalla. Lähdetietokannasta ei voi peilata uusia tietoja.

Jos poistat Azure SQL Managed Instance SAMI-käyttöoikeuksia tai käyttöoikeuksia ei ole määritetty oikein, noudata seuraavia ohjeita.

  1. Lisää SAMI käyttäjäksi valitsemalla ... kolme pistettä -vaihtoehto peilatun hallitun esiintymän kohteessa.
  2. Valitse Hallitse käyttöoikeuksia -vaihtoehto.
  3. Kirjoita Azure SQL Managed Instance julkinen päätepiste. Anna luku - ja kirjoitusoikeudet .

Lokin käyttö

Peilauksen käyttöön ottaman tietokannan tapahtumalokin käyttö voi jatkaa kasvuaan ja hidastaa lokin katkaisua. Kun tapahtumalokin koko saavuttaa määritetyn enimmäisrajan, tietokantaan kirjoittaminen epäonnistuu. Tältä suojautumiseksi peilaus käynnistää koko tietokannan automaattisen uudelleenkäynnistyksen, kun käytetty lokitila ylittää määritetyn lokitilan kokonaisrajan. Jos haluat diagnosoida tämän ja oppia automaattisesta uudelleenkylvöstä, katso Azure SQL Managed Instancen peilattujen Fabric-tietokantojen automaattinen uudelleensyöttö.

Uudelleenkylvö on alkanut automaattisesti

Fabric Mirroring Azure SQL Managed Instancesta voidaan palauttaa automaattisesti uudelleen tietyissä olosuhteissa, yksittäisen taulukon tasolla tai koko tietokannalle. Lisätietoja on artikkelissa Automaattinen uudelleentallennus Fabricin peilatuille tietokannoille Azure SQL Managed Instance.