Jaa


MySQL-tietokannan CDC-lähteen lisääminen tapahtumavirtaan

Muistiinpano

Tässä artikkelissa on viittauksia termiin SLAVE, jota Microsoft ei enää käytä. Kun termi poistetaan ohjelmistosta, poistamme sen tästä artikkelista.

Tässä artikkelissa kerrotaan, miten voit lisätä MySQL Change Data Capture -lähteen tapahtumavirtaan. Tällä hetkellä MySQL-tietokannan CDC-tietokantaa tuetaan seuraavista palveluista, joissa tietokantoja voidaan käyttää julkisesti:

  • Azure Database for MySQL
  • Amazon RDS for MySQL
  • Amazon Aurora MySQL
  • Google Cloud SQL for MySQL (GCP) -.

Tässä oppaassa käytetään esimerkkinä Azure Database for MySQL CDC .

Kun MySQL-tietokannan CDC-lähde on lisätty tapahtumavirtaan, se tallentaa rivitason muutokset määritettyihin taulukoihin. Nämä muutokset voidaan sitten käsitellä reaaliaikaisesti ja lähettää eri kohteisiin tarkempaa analysointia varten.

Muistiinpano

Tätä lähdettä ei tueta seuraavilla työtilakapasiteettisi alueilla: Länsi-YHDYSVALLAT3, Sveitsi, läntinen.

Edellytykset

  • Työtilan käyttöoikeus Fabric-kapasiteetin käyttöoikeustilassa (tai) kokeiluversion käyttöoikeustilassa Osallistuja-oikeudella tai korkeammilla käyttöoikeuksilla.
  • Käyttöoikeus MySQL-tietokannan esiintymään, kuten: tietokanta Azure-tietokantaan MySQL:lle – Joustava palvelin.
  • MySQL-tietokantasi on oltava julkisesti käytettävissä, eikä se saa olla palomuurin takana tai suojattu näennäisverkossa.
  • Jos sinulla ei ole tapahtumastreamia, luo tapahtumavirta.

MySQL DB:n määrittäminen

Liitin tallentaa Muutokset MySQL-tietokantaan Debezium MySQL -liittimen avulla. Sinun on määritettävä MySQL-käyttäjä, jolla on asianmukaiset oikeudet kaikkiin tietokantoihin, joista Messaging Connector voi siepata muutokset. Voit käyttää suoraan järjestelmänvalvojakäyttäjää yhteyden muodostamiseen tietokantaan, johon tavallisesti liittyvät oikeudet, tai voit luoda uuden käyttäjän noudattamalla seuraavia ohjeita:

Muistiinpano

Uutta käyttäjä- tai järjestelmänvalvojatiliä ja vastaavaa salasanaa käytetään tietokantaan yhdistämiseen myöhemmin Eventstreamin sisällä.

  1. Luo komentokehotteessa mysql MySQL-käyttäjä:

    mysql> CREATE USER 'user'@'%' IDENTIFIED BY 'password';
    
  2. Myönnä tarvittavat oikeudet käyttäjälle:

    mysql> GRANT SELECT, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user'@'%';
    

    Muistiinpano

    Kun yleinen lukulukko ei ole käytettävissä, kuten Amazon RDS- tai Aurora-isännöidyissä palveluissa, yhdenmukaisen tilannevedoksen luomiseen käytetään taulukkotason lukituksia. Tässä tapauksessa sinun on myönnettävä LOCK TABLES käyttöoikeus käyttäjälle. Lisäksi jos haluat tukea FLUSH toimintoja tilannevedoksen aikana, sinun on ehkä myönnettävä myös RELOAD tai FLUSH_TABLES oikeudet.

  3. Viimeistele käyttäjän oikeudet:

    mysql> FLUSH PRIVILEGES;
    

Jos haluat vahvistaa, onko käyttäjällä tai järjestelmänvalvojalla tarvittavat oikeudet, suorita tämä komento, niin vaiheen 2 vaaditut oikeudet näytetään:

SHOW GRANTS FOR user;

Lisätietoja vaadittujen käyttöoikeuksien myöntämisestä käyttäjälle on mySQL:n Debezium-liittimen kohdassa Debezium-dokumentaatio.

Ota binlog käyttöön

Sinun on otettava binaarikirjaus käyttöön MySQL-replikointia varten. Binaarilokit tallentavat tapahtumapäivitykset replikointityökaluille muutosten levittämiseksi. Tässä osassa käytetään esimerkkinä Azure Database for MySQL CDC -tietokantaa.

  1. Valitse Azure Database for MySQL -tilisi Azure-portaali-sivulla palvelimen parametritvasemman reunan asetuksissa.

  2. Määritä Palvelimen parametrit -sivulla seuraavat ominaisuudet ja valitse sitten Tallenna.

    • Valitse binlog_row_image täydet.

    • Määritä binlog_expire_logs_seconds määrä sekunteina, jonka palvelu odottaa, ennen kuin binaarilokitiedosto puhdistetaan. Määritä arvo vastaamaan ympäristösi tarpeita, esimerkiksi 86400.

    Näyttökuva palvelinparametrien replikoinnin binlog-asetuksista.

Lisää MySQL DB (CDC) lähteeksi

Jos et ole vielä lisännyt lähdettä tapahtumavirtaan, valitse Käytä ulkoista lähderuutua .

Näyttökuvassa näkyy Käytä ulkoista lähderuutua -valinta.

Jos lisäät lähteen jo julkaistuun tapahtumavirtaan, vaihda Muokkaa-tilaan , valitse valintanauhasta Lisää lähde ja valitse sitten Ulkoiset lähteet.

Näyttökuvassa näkyy Lisää lähde ulkoisiin lähteisiin -valikko.

Etsi Ja valitse Valitse tietolähde -sivulla YhdistäMySQL DB (CDC) -ruudussa.

Näyttökuvassa näkyy MySQL DB (CDC) -kohteen valinta lähdetyypiksi ohjatussa Hae tapahtumat -toiminnossa.

MySQL DB:n (CDC) määrittäminen ja siihen yhdistäminen

  1. Valitse Yhdistä-näytön Yhteys-kohdassa Uusi yhteys luodaksesi pilviyhteyden.

    Näyttökuvassa näkyy Yhdistä-sivu.

  2. Anna seuraavat Yhteysasetukset ja Yhteyden tunnistetiedot MySQL-tietokantaasi varten ja valitse sitten Yhdistä.

    • Palvelin: MySQL-tietokannan palvelinosoite, esimerkiksi my-mysql-server.mysql.database.azure.com.

    • Tietokanta: Tietokannan nimi, esimerkiksi my_database.

    • Yhteyden nimi: Luodaan automaattisesti, tai voit antaa tälle yhteydelle uuden nimen.

    • Username and Password -: Anna MySQL-tietokantasi tunnistetiedot. Varmista, että annat palvelimen järjestelmänvalvojatilin tai luodun käyttäjätilin, jolle on myönnetty tarvittavat oikeudet.

      Näyttökuva Azure MySQL DB (CDC) -tietokannan yhteysasetuksista.

  3. Määritä MySQL DB CDC -tietolähde antamalla seuraavat tiedot ja valitse sitten Seuraava.

    • Taulukko:: Kirjoita luettelo taulukoiden nimistä pilkuilla eroteltuna. Kunkin taulukon nimen on noudatettava muotoa <database name>.<table name>, esimerkiksi my_database.users.

    • Palvelintunnus: Anna yksilöllinen arvo kullekin palvelin- ja replikointiasiakkaalle MySQL-klusterissa. Oletusarvo on 1 000.

    • Portti: Jätä oletusarvo muuttumatta.

      Näyttökuva Azure MySQL DB (CDC) -yhteyden taulukoiden, palvelintunnuksen ja portin valitsemisesta.

    Voit muokata lähteen nimeä myös valitsemalla Lähteen nimi -kynäpainikkeen oikealla puolella Streamin tiedot -osassa.

    Muistiinpano

    Määritä kullekin lukijalle eri palvelintunnus. Jokaisella MySQL-tietokantaasiakkaalla binlogin lukemista varten tulisi olla yksilöivä tunnus, jota kutsutaan palvelintunnuksi. MySQL-palvelin käyttää tätä tunnusta verkkoyhteyden ja binlog-sijainnin ylläpitämiseen. Eri työt, jotka jakavat saman palvelintunnuksen, voivat johtaa lukemiseen väärästä binlog-sijainnista. Siksi on suositeltavaa määrittää eri palvelintunnus kullekin lukijalle.

  4. Tarkista + yhdistä --sivulla, kun olet tarkistanut MySQL DB CDC -lähteen yhteenvedon, viimeistele määritys valitsemalla Lisää.

    Näyttökuvassa näkyy Tarkista + yhdistä -sivu Lisää-painike valittuna.

Muistiinpano

Yhden tapahtumavirran lähteiden ja kohteiden enimmäismäärä on 11.

Näytä päivitetty tapahtumavirta

  1. Näet MySQL DB (CDC) -lähteen lisättynä tapahtumavirtaasi Muokkaa-tilassa.

    Näyttökuva lisätystä Azure MySQL DB CDC -lähteestä muokkaustilassa Julkaise-painike korostettuna.

  2. Valitse Julkaise, jos haluat julkaista muutokset ja aloittaa MySQL DB CDC -tietojen suoratoiston tapahtumavirtaan.

    Näyttökuva lisätystä Azure MySQL DB CDC -lähteestä reaaliaikaisessa tilassa.

Muut liittimet: