Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A PostgreSQL bővítményei és moduljai hatékony eszközök, amelyekkel a felhasználók bővíthetik az adatbázisrendszer funkcióit. Az egyszerű SQL-objektumoktól az összetett bináris kódtárakig terjedhetnek, és olyan további funkciókat és képességeket biztosítanak, amelyek nem érhetők el az alapvető PostgreSQL-disztribúcióban.
Bővítmények
Egy bővítmény definiálásához legalább egy szkriptfájlra van szükség, amely tartalmazza az SQL-parancsokat a bővítmény által elosztott objektumok létrehozásához, valamint egy vezérlőfájlra , amely a bővítmény néhány alapvető tulajdonságát határozza meg.
Amikor bővítményeket hoznak létre, telepítenek vagy betöltenek egy adatbázisba, olyan kötegobjektumokat helyeznek üzembe, amelyek a motor funkcióinak bővítését célul tűzik ki. Ezek az objektumok lehetnek függvények, operátorok, szerepkörök, adattípusok, hozzáférési módszerek és egyéb adatbázis-objektumtípusok.
Amikor a bővítményeket eldobja, eltávolítja vagy kiüríti egy adatbázisból, a bővítmény által létrehozott összes objektum eltávolításra kerül. Ez alól kivételt képeznek azok az objektumok, amelyek a bővítmény által meghatározott objektumok bármelyikétől függenek az adatbázisban.
A bővítmény által elosztott objektumok által biztosított funkciók implementálása SQL-ben vagy PL/pgSQL-ben írható. De egy külön megosztott kódtárfájlban (bináris) is implementálható, amely a funkciót megvalósító forráskód (általában C vagy Rust nyelven íródott) összeállításának eredménye.
A PostgreSQL-ben a bővítmények kezelése a , CREATE EXTENSION, ALTER EXTENSIONés DROP EXTENSION parancsokkal COMMENT ON EXTENSIONtörténik.
-
CREATE EXTENSIONlétrehoz, telepít vagy betölt egy bővítményt abba az adatbázisba, amelyben a parancs végrehajtása történik. -
ALTER EXTENSIONfrissíti a bővítményt egy újabb verzióra. -
DROP EXTENSIONeltávolít, eltávolít vagy eltávolít egy bővítményt abból az adatbázisból, amelyben a parancs végrehajtása történik. -
COMMENT ON EXTENSIONadatbázis-objektumként tárolja a bővítmény megjegyzését.
A kiszolgáló indításakor a rendszer meghatároz egy memóriaterületet, amelyhez az összes háttérfolyamat hozzáférhet, hogy együttműködve futtathassa a számítási feladatokat. A PostgreSQL-zsargonban ezt a memóriaterületet megosztott memóriának nevezzük.
Egyes bővítmények, amelyek megosztott kódtárak használatával implementálják a funkciókat, a megosztott memóriaterületet az ezekben a kódtárakban létrehozott kódból érik el. Ezeknek a bővítményeknek még egy követelményük van, vagyis a megosztott kódtárfájlokat a fő motorfolyamatnak kell betöltenie, amint a kiszolgáló elindul. Ezekben a kódtárakban a betöltési kódtárak utasításait kell követnie.
Modulok
Bár a bővítmények nem tekinthetők ilyennek, mivel nem rendelkeznek vezérlőfájllal és szkriptfájllal a csomagban lévő SQL-objektumok adatbázisbeli üzembe helyezéséhez, a PostgreSQL-ben a bővíthetőség egy másik formája az önálló megosztott bináris kódtárfájlok funkcióinak implementálása.
Ezek a fájlok a kiszolgáló indításakor a memóriába is betölthetők, és olyan kódot implementálhatnak, amely általában a PostgreSQL természetes végrehajtási útvonalát módosítja a motor alapértelmezett működésének megváltoztatásához. Az ilyen viselkedésbeli változások általában a motor néhány korlátozott funkciójának felerősítésére irányulnak.
Az Azure Database for PostgreSQL a következő modulokat támogatja:
- auto_explain
- pg_failover_slots
- pg_partman_bgw
- wal2json