Adatbázisok módosítása, átnevezése, törlése és másolása a PostgreSQL-ben

author
4 minutes, 9 seconds Read

Összefoglaló: Ez a cikk az ALTER DATABASE, RENAME DATABASE és DROP DATABASE utasításokat, valamint a CREATE DATABASE WITH TEMPLATE utasítás használatát tárgyalja egy adatbázis másolásához.

1. ALTER DATABASE utasítások

a. Az adatbázis tulajdonosának megváltoztatása

b. Sablon adatbázis beállítása

c. Új kapcsolatok korlátozása egy adott adatbázishoz

d. A kapcsolati korlát korlát korlátozása egy adott adatbázishoz

e. Az adatbázis alapértelmezett táblaterületének megváltoztatása

2. RENAME DATABASE utasítások

3. DROP DATABASE utasítások

4. Adatbázis szerkezetének és adatainak másolása

Ez a bejegyzés a PostgreSQL adatbázisok PSQL promptból történő kezeléséhez rendelkezésre álló néhány parancsot vizsgálja. Áttekintjük az adatbázis módosításának, átnevezésének, törlésének és másolásának módszereit.

Megismételjük néhány alapvető PostgreSQL parancsot:

1. Adatbázis létrehozásának szintaxisa:

CREATE DATABASE name user_name ] template ] encoding ] lc_collate ] lc_ctype ] tablespace ] connlimit ] ]

2. A jelenlegi fürtben lévő adatbázisok listájának lekérdezése:

a. \l+

b. select * from pg_database ;

ALTER database utasítások

ALTER database utasításokkal módosíthatjuk a céladatbázis meglévő attribútumait.

Az adatbázis tulajdonosának megváltoztatása

Az adatbázis tulajdonosának megváltoztatásához a csatlakozó felhasználónak az adatbázis tulajdonosának kell lennie, valamint az új tulajdonos szerepkör közvetlen vagy közvetett tagjának, és a csatlakozó felhasználónak rendelkeznie kell a CREATEDB jogosultsággal.

Szintaxis

ALTER DATABASE <database_name> OWNER TO <new_owner>;

Példa

ALTER DATABASE test OWNER TO user;

Sablonadatbázis beállítása

Egy fürtben alapértelmezés szerint csak két sablonadatbázis van jelen – template0 és template1. Más adatbázisok alapértelmezés szerint nem használhatók sablonként. Abban az esetben, ha egyéni adatbázis-sablont szeretne létrehozni a környezetéhez, használhatja ezt az opciót.

Szintaktika

ALTER DATABASE <database_name> WITH IS_TEMPLATE = true;

Példa

ALTER DATABASE test WITH IS_TEMPLATE = true;

Új kapcsolatok korlátozása egy adott adatbázishoz

Ez az opció nagyon hasznos az adatbázis karbantartásához. Az adatbázis-karbantartási ablakban korlátozhatja az új kapcsolatokat egy adott adatbázishoz. Az opció engedélyezéséhez egyetlen felhasználó sem csatlakozik a céladatbázishoz.

Szintaktika

ALTER DATABASE <database_name> WITH ALLOW_CONNECTIONS = false;

Példa

ALTER DATABASE test2 WITH ALLOW_CONNECTIONS = false;

Kapcsolatlimit korlátozása egy adott adatbázishoz

A biztonság és az optimális teljesítmény érdekében korlátozhatja a céladatbázishoz csatlakozható kapcsolatok számát. Alapértelmezés szerint ennek a paraméternek az értéke korlátlan – azaz -1 – minden adatbázis esetében.

Szintaktika

ALTER DATABASE <database_name> WITH CONNECTION LIMIT <max_number_of_connections>;

Példa

ALTER DATABASE test2 WITH CONNECTION LIMIT 10;

Az adatbázis alapértelmezett asztaltérének megváltoztatása

Az alapértelmezett asztaltér objektumait, például a táblákat és indexeket fizikailag áthelyezheti az alapértelmezett asztaltérből egy új egyéni asztaltérbe. Az új alapértelmezett asztaltérnek üresnek kell lennie az adott adatbázis számára, és e tevékenység során senki sem kapcsolódhat az adatbázishoz.

Figyelem: Ezt a módosítást az adatbázis tulajdonosának vagy egy szuperfelhasználónak kell elvégeznie, és a felhasználónak CREATE jogosultsággal kell rendelkeznie az új asztaltérhez.

Szintaktika

ALTER DATABASE <database_name> SET TABLESPACE <custom_tablespace_name>;

Példa

ALTER DATABASE test SET TABLESPACE custom_tblspc;

RENAME adatbázis utasítások

Az aktuális adatbázis nevét a RENAME segítségével módosíthatja. Azonban nem nevezheti át az adatbázist, miközben más kapcsolatok is hozzáférnek hozzá.

Figyelem: Ezt a módosítást az adatbázis tulajdonosának vagy a szuperfelhasználónak kell elvégeznie, és a felhasználónak CREATEDB jogosultságokkal kell rendelkeznie.

Szintaktika

ALTER DATABASE <old_database_name> RENAME TO <new_database_name>;

Példa

ALTER DATABASE test RENAME TO test123;

DROP adatbázis utasítások

Elhagyhatja a céladatbázist. Ezzel eltávolítja az adatbázis katalógusbejegyzéseit, és törli az adatokat tartalmazó könyvtárat. Csak az adatbázis tulajdonosa hajthatja végre. Továbbá nem hajtható végre, amíg Ön vagy bárki más csatlakozik a céladatbázishoz.

Figyelem: A DROP DATABASE nem vonható vissza.

Szintaktika

DROP DATABASE <database_name>;

Példa

DROP DATABASE test2;

Similar Posts

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.