Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Tillägg och moduler i PostgreSQL är kraftfulla verktyg som du kan använda för att utöka databassystemets funktioner. De sträcker sig från enkla SQL-objekt till komplexa binära bibliotek, och de ger extra funktioner och funktioner som inte är tillgängliga i postgreSQL-kärndistributionen.
Tillägg
För att definiera ett tillägg behöver du minst en skriptfil som innehåller SQL-kommandona för att skapa objekten som distribueras av tillägget och en kontrollfil som anger en grundläggande egenskap för själva tillägget.
När du skapar, installerar eller läser in tillägg i en databas distribuerar de en uppsättning paketobjekt som syftar till att utöka motorns funktioner. Dessa objekt kan vara funktioner, operatorer, roller, datatyper, åtkomstmetoder och andra databasobjekttyper.
När du släpper, avinstallerar eller tar bort tillägg från en databas tar processen bort alla objekt som tillägget skapade. Ett undantag i det fallet är när det finns andra objekt i databasen med beroenden för något av de objekt som definieras av tillägget.
Du kan skriva implementeringen av de funktioner som tillhandahålls av de objekt som distribueras av tillägget i SQL eller PL/pgSQL. Men du kan också implementera den i en separat delad biblioteksfil (binär fil), vilket är resultatet av kompileringen av källkoden (vanligtvis skriven i C eller Rust) som implementerar funktionerna.
I PostgreSQL hanterar du tillägg via kommandona CREATE EXTENSION, ALTER EXTENSION, DROP EXTENSIONoch COMMENT ON EXTENSION .
-
CREATE EXTENSIONskapar, installerar eller läser in ett tillägg i databasen där du kör kommandot. -
ALTER EXTENSIONuppdaterar tillägget till en nyare version. -
DROP EXTENSIONsläpper, avinstallerar eller tar bort ett tillägg från databasen där du kör kommandot. -
COMMENT ON EXTENSIONlagrar en kommentar om tillägget som ett databasobjekt.
När servern startar definierar den ett minnesområde som alla serverdelsprocesser kan komma åt för att tillsammans köra alla arbetsbelastningar. I PostgreSQL-jargong kallas det minnesområdet för delat minne.
Vissa tillägg som implementerar funktioner med hjälp av delade bibliotek måste komma åt det delade minnesområdet från koden som är inbyggd i dessa bibliotek. Dessa tillägg har ytterligare ett krav, vilket är att deras delade biblioteksfiler måste läsas in av huvudmotorprocessen så snart servern startar. För de biblioteken följer du instruktionerna i ladda bibliotek.
Moduler
Även om de inte betraktas som tillägg eftersom de inte har en kontrollfil och en skriptfil för att distribuera paketerade SQL-objekt i en databas, implementerar en annan form av utökningsbarhet i PostgreSQL funktioner i fristående delade binära biblioteksfiler.
Du kan läsa in dessa filer i minnet när servern startar. De kan implementera kod som normalt leder bort PostgreSQL från dess normala exekveringsflöde för att ändra databasmotorns standardbeteende. Sådana beteendeförändringar syftar normalt till att förstärka vissa begränsade funktioner i motorn.
Azure Database for PostgreSQL stöder följande moduler:
- auto_explain
- pg_failover_slots
- pg_partman_bgw
- wal2json