Muistiinpano
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
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:
- MySQL:n Azure-tietokanta
- Amazon RDS MySQL:lle
- 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.
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ä.
Luo komentokehotteessa
mysqlMySQL-käyttäjä:mysql> CREATE USER 'user'@'%' IDENTIFIED BY 'password';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 TABLESkäyttöoikeus käyttäjälle. Lisäksi jos haluat tukeaFLUSHtoimintoja tilannevedoksen aikana, sinun on ehkä myönnettävä myösRELOADtaiFLUSH_TABLESoikeudet.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
Valitse Azure Database for MySQL -tilisi Azure-portaali-sivulla palvelimen parametritvasemman reunan asetuksissa.
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.
Lisää MySQL DB (CDC) lähteeksi
Jos et ole vielä lisännyt lähdettä eventstreamiin, valitse Käytä ulkoista lähdettä -ruutu.
Jos lisäät lähdekoodin jo julkaistuun tapahtumavirtaan, vaihda muokkaustilaan . Nauhalta valitse Lisää lähde>Ulkoiset lähteet.
Etsi Ja valitse Valitse tietolähde -sivulla YhdistäMySQL DB (CDC) -ruudussa.
MySQL DB:n (CDC) määrittäminen ja siihen yhdistäminen
Valitse Yhdistä-näytön Yhteys-kohdassa Uusi yhteys luodaksesi pilviyhteyden.
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.
Määritä MySQL DB CDC -tietolähde antamalla seuraavat tiedot ja valitse sitten Seuraava.
Portti: Oletusarvo on 3306. Jos valittu pilviyhteys on määritetty kohdassa Yhteyksien ja yhdyskäytävien hallinta, varmista, että porttinumero vastaa siinä määritettyä. Jos ne eivät täsmää, porttinumero pilviyhteydessä kohdassa Yhteyksien ja yhdyskäytävien hallinta on etusijalla .
taulukko: Valitse Kaikki taulukot tai Anna taulukon nimet. Jos valitset jälkimmäisen, määritä taulukot käyttämällä pilkuin eroteltua luetteloa kokonaisista taulukon tunnisteista (
databaseName.tableName) tai kelvollisia säännönmukaisia lausekkeita. Esimerkkejä:-
databaseName.test.*avulla voit valita kaikki taulukot, joiden nimi alkaadatabaseName.test. - valitse
databaseName\.(test1|test2)jadatabaseName.test1databaseName.test2avulla.
Voit yhdistellä molempia muotoiluja pilkuilla. Koko merkinnän merkkirajoitus on 102 400 merkkiä.
-
Palvelintunnus: Anna yksilöllinen arvo kullekin palvelin- ja replikointiasiakkaalle MySQL-klusterissa. Oletusarvo on 1 000.
Muistiinpano
Määritä kullekin lukijalle eri palvelintunnus. Jokaisella MySQL-tietokannan asiakkaalla 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.
Voit avata Edistyneet asetukset päästäksesi lisäkonfiguraatioasetuksiin MySQL-tietokannan CDC-lähteelle:
-
Tilannevedoslukitustila: Asetukset ovat:
-
Minimal (default): Pitää globaalin lukulukon vain alkuvaiheessa skeeman ja metatietojen kaappaamiseksi. Tilannevedoksen loppuosassa käytetään TOISTETTAVA LUKU -tapahtumaa, joka sallii päivitykset tietojen lukemisen aikana. -
Extended: Ylläpitää globaalia lukulukkoa koko snapshotin ajan, estäen kaikki kirjoitukset. Käytä johdonmukaisuutta, jos kirjoitusten esto on hyväksyttävää. -
None: Ohittaa pöytälukkojen hankkimisen snapshotin aikana. Turvallinen vain, jos rakenteen muutoksia ei tapahdu prosessin aikana.
-
-
Desimaalikäsittelytila: Määrittää, miten liitin käsittelee ja
DECIMALsarakearvotNUMERIC:-
Precise: Edustaa arvoja käyttäen tarkkoja desimaalityyppejä (esimerkiksi JavaBigDecimal), joilla varmistetaan tietojen esityksen täysi tarkkuus ja tarkkuus. -
Double: muuntaa arvot kaksoistarkoiksi liukupisteluvuiksi. Tämä parantaa käytettävyyttä ja suorituskykyä, mutta saattaa johtaa tarkkuuden heikkenemiseen. -
String: Koodaa arvot muotoiltuina merkkijonoina. Tämän ansiosta niitä on helppo käyttää jatkojalostusjärjestelmissä, mutta ne menettävät semanttisia tietoja alkuperäisestä numeerisesta tyypistä.
-
-
Snapshot-tila: Määritä kriteerit snapshotin suorittamiselle, kun liitin käynnistyy:
-
Initial: Liitin suorittaa snapshotin vain, kun loogisen palvelimen nimen offsetteja ei ole kirjattu tai jos se havaitsee, että aiempi snapshotti epäonnistui valmistumaan. Snapshotin valmistuttua liitin alkaa striimata tapahtumatietueita myöhempiä tietokantamuutoksia varten. -
InitialOnly: Liitin suorittaa snapshotin vain, kun loogiselle palvelimen nimelle ei ole tallennettu offsetteja. Snapshotin valmistuttua liitin pysähtyy. Se ei siirry suoratoistoon lukeakseen muutoksia binlogista. -
NoData: Liitin suorittaa snapshotin, joka tallentaa vain skeeman, mutta ei taulukkodataa. Aseta tämä asetus, jos et tarvitse johdonmukaista tilannekuvaa datasta, mutta tarvitset vain ne muutokset, jotka tapahtuvat liittimen käynnistymisen jälkeen.
-
Voit muokata lähteen nimeä myös valitsemalla Lähteen nimi -kynäpainikkeen oikealla puolella Streamin tiedot -osassa.
-
Tilannevedoslukitustila: Asetukset ovat:
Tarkista + yhdistä -
-sivulla, kun olet tarkistanut MySQL DB CDC -lähteen yhteenvedon, viimeistele määritys valitsemalla Lisää .
Näytä päivitetty tapahtumavirta
Näet MySQL DB (CDC) -lähteen lisättynä tapahtumavirtaasi Muokkaa-tilassa.
Valitse Julkaise, jos haluat julkaista muutokset ja aloittaa MySQL DB CDC -tietojen suoratoiston tapahtumavirtaan.
Liittyvä sisältö
Muut liittimet: