Avansert PostgreSQL: Indeksering, partisjonering og replikering · leksjon

Konfigurere publikasjoner

Lær å definere publikasjoner på en master-server for å angi hvilke tabeller og operasjoner som skal replikeres.

Leksjon 2 av 411 trinn

Konfigurere publikasjoner er en gratis leksjon i Avansert PostgreSQL: Indeksering, partisjonering og replikering på CoddyKit. Dette er leksjon 2 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Avansert PostgreSQL: Indeksering, partisjonering og replikering, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Avansert PostgreSQL: Indeksering, partisjonering og replikering inneholder totalt 4 leksjoner.

Hva er publikasjoner?

Velkommen! I PostgreSQLs logiske replikering er en publikasjon som en kanal på hovedserveren som kringkaster dataendringer.

Den definerer hvilke data (hvilke tabeller) og hvilke operasjoner (INSERTs, UPDATEs, DELETEs, TRUNCATEs) som skal replikeres til abonnentservere.

Tenk på det som å sette opp en TV-kanal: De bestemmer hvilke programmer som skal kringkastes, og når.

Grunnleggende oppsett av publikasjoner

Det er enkelt å opprette en publikasjon ved hjelp av kommandoen CREATE PUBLICATION. La oss begynne med den enkleste formen.

Dette oppretter en publikasjon som ennå ikke publiserer noen tabeller, men som er klar til å konfigureres.

CREATE PUBLICATION my_first_pub;

Publisering av alle tabeller

Hvis De vil replikere alle tabeller i den gjeldende databasen (og eventuelle nye tabeller som opprettes senere), kan De bruke klausulen FOR ALL TABLES.

Dette er nyttig når De vil replikere et helt databaseskjema.

CREATE PUBLICATION all_db_changes FOR ALL TABLES;

Publisering av bestemte tabeller

Ofte trenger De bare å replikere et utvalg av tabellene. De kan angi disse tabellene direkte ved hjelp av klausulen FOR TABLE.

Denne publikasjonen kringkaster bare endringer fra tabellene users og products.

CREATE PUBLICATION sales_data_pub FOR TABLE users, products;

Dynamisk kontra statisk

Det finnes en viktig forskjell mellom FOR ALL TABLES og tabelloppføring med FOR TABLE:

  • FOR ALL TABLES: Inkluderer dynamisk alle nåværende og fremtidige tabeller i databasen.
  • FOR TABLE table1, table2: Lister bestemte tabeller statisk. Nye tabeller må legges til manuelt.

Velg ut fra behovene Deres for replikering!

Replikering av bestemte operasjoner

Publikasjoner kan konfigureres til å replikere bare bestemte typer dataendringer. Som standard replikeres INSERT, UPDATE, DELETE og TRUNCATE.

De kan bruke klausulen WITH (publish = '...') til å velge bestemte operasjoner. Her replikerer vi bare INSERT-setninger.

CREATE PUBLICATION new_orders_only FOR TABLE orders WITH (publish = 'insert');

Kombinering av operasjoner

Hvis De vil replikere flere, men ikke alle, operasjonstyper, kan De liste dem separert med komma i alternativet publish.

Denne publikasjonen replikerer operasjonene INSERT, UPDATE og DELETE, men ikke TRUNCATE.

CREATE PUBLICATION user_activity FOR TABLE user_logs WITH (publish = 'insert, update, delete');

Liste over publikasjoner

Vil De se hvilke publikasjoner som er aktive på serveren? PostgreSQL lagrer denne informasjonen i systemkatalogene.

De kan spørre visningen pg_publication for å få detaljer om hver publikasjon, blant annet hvilke operasjoner den publiserer.

SELECT pubname, puballtables, pubinsert, pubupdate, pubdelete, pubtruncate FROM pg_publication;

Administrasjon av publikasjoner

De kan endre en eksisterende publikasjon for å legge til eller fjerne tabeller, eller slette den helt hvis den ikke lenger trengs.

  • ALTER PUBLICATION ADD TABLE: Legger til tabeller.
  • ALTER PUBLICATION DROP TABLE: Fjerner tabeller.
  • DROP PUBLICATION: Sletter en publikasjon.
ALTER PUBLICATION sales_data_pub ADD TABLE accounts;
ALTER PUBLICATION sales_data_pub DROP TABLE products;
DROP PUBLICATION sales_data_pub;

Quiz om konfigurasjon av publikasjoner

Hvilket av følgende utsagn konfigurerer en publikasjon korrekt i PostgreSQL?

Oppsummering: konfigurering av publikasjoner

Godt jobbet! De har lært hvordan publikasjoner defineres i PostgreSQL.

  • Publikasjoner kringkaster dataendringer for logisk replikering.
  • Bruk CREATE PUBLICATION til å definere dem.
  • De kan publisere FOR ALL TABLES eller FOR TABLE specific_tables.
  • Med klausulen WITH (publish = '...') kan De velge bestemte operasjoner (insert, update, delete, truncate).
  • De kan administrere dem med ALTER PUBLICATION og DROP PUBLICATION.

Deretter skal vi lære hvordan abonnementer settes opp for å motta disse endringene!

Gratis å komme i gang

Lær deg Avansert PostgreSQL: Indeksering, partisjonering og replikering med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
11
Leksjoner
44

Ofte stilte spørsmål

Er leksjonen «Konfigurere publikasjoner» gratis?

Ja – hele teksten i «Konfigurere publikasjoner» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Avansert PostgreSQL: Indeksering, partisjonering og replikering-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Avansert PostgreSQL: Indeksering, partisjonering og replikering inneholder totalt 4 leksjoner.

Hva lærer jeg i «Konfigurere publikasjoner»?

Lær å definere publikasjoner på en master-server for å angi hvilke tabeller og operasjoner som skal replikeres. Du øver på Avansert PostgreSQL: Indeksering, partisjonering og replikering med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Avansert PostgreSQL: Indeksering, partisjonering og replikering?

Ingen tidligere erfaring er nødvendig. Avansert PostgreSQL: Indeksering, partisjonering og replikering på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.

Hvor lang tid tar leksjonen «Konfigurere publikasjoner»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Avansert PostgreSQL: Indeksering, partisjonering og replikering-leksjonen?

Ja. Alle Avansert PostgreSQL: Indeksering, partisjonering og replikering-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Grunnleggende om logisk replikering
  2. Konfigurere publikasjoner
  3. Administrere abonnementer
  4. Konfliktløsning i logisk replikering
← Tilbake til Avansert PostgreSQL: Indeksering, partisjonering og replikering