Gå till huvudinnehåll Gå till ytterligare innehåll

Begränsningar och överväganden

Du bör vara medveten om följande begränsningar och överväganden när du använder en PostgreSQL-källa:

Begränsningar och överväganden för alla datauppgifter

  • Databasnamnet får inte innehålla ett semikolon (;).
  • Det finns inget stöd för att registrera ändringar när databasen är i Hot Standby-läge.
  • För att registrera ändringar från en sekundär databas måste läs- och skrivrättigheter konfigureras för databasen. På grund av kravet på skrivbehörighetstöds inte PostgreSQL:s läskopia (i en högtillgänglighetsmiljö).

    Information om läs- och skrivbehörighet behörigheter finns i Samla in ändringar från en kundinstallerad PostgreSQL-databas.

  • Flyttar av flera tabeller med samma namn men med olika skiftläge (t.ex table1, TABLE1 och Table1) kan orsaka oförutsägbart beteende och stöds därför inte.
  • Ändringsbehandling av TRUNCATE-åtgärder stöds inte.
  • Uppskjutna begränsningar stöds inte.
  • Endast standardkonfigurationen för replikidentitet stöds.

    Mer information om replikidentitet finns på https://www.postgresql.org/docs/10/logical-replication-publication.html

  • Unika index med CASE-uttryck stöds inte.

Begränsningar och överväganden endast för mellanlagringsuppgifter

  • Partitionerade tabeller stöds inte.
  • Tvingad failover är en funktion i Azure Database för PostgreSQL – Flexible Server. Om tvingad failover inträffar när data flyttar från Azure Database för PostgreSQL – Flexible Server stoppas uppgiften och datauppsättningarna måste skapas på nytt.

Begränsningar och överväganden för replikering och mellanlagringsuppgifter

  • Både källtabellen och motsvarande måltabell måste ha en identisk primärnyckel. Om en av tabellerna inte har en primärnyckel kommer resultatet av DELETE- och UPDATE-registreringar att vara oförutsägbart.
  • Köralternativet "Start Process Changes from Timestamp" stöds inte.
  • Flyttar av före-bilden stöds inte.
  • Behandling av ändringar av [CREATE | ALTER | DROP]-tabell-DDL:er stöds om de inte finns i ett inre funktions-/procedurhuvuddelsblock eller i andra inbäddade konstruktioner.

    Följande ändring kommer till exempel inte att registreras:

    CREATE OR REPLACE FUNCTION attu.create_distributors1() RETURNS void

    LANGUAGE plpgsql

    AS $$

    BEGIN

    create table attu.distributors1(did serial PRIMARY KEY,name varchar(40) NOT NULL);

    END;

    $$;

  • När ändringar registreras för källtabeller kommer en RENAME TABLE-åtgärd bara att registreras om den föregås av en DML-åtgärd.

  • PostGIS-datatyper stöds inte.

  • Tvingad failover är en funktion i Azure Database för PostgreSQL – Flexible Server. Om tvingad failover inträffar när data flyttar från Azure Database för PostgreSQL – Flexible Server stoppas uppgiften och måste laddas om.

  • SQL MERGE-kommandot som introducerades i PostgreSCQL har inte certifierats.

Datatyper som inte stöds

Följande datatyper stöds inte:

  • PostGIS

  • INT4MULTIRANGE
  • INT8MULTIRANGE
  • NUMMULTIRANGE
  • TSMULTIRANGE

Var den här sidan till hjälp för dig?

Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!