Hozzon létre egy adatbázist a PostgreSQL-ben a Createb paranccsal

Hozzon Letre Egy Adatbazist A Postgresql Ben A Createb Paranccsal



Ebben az útmutatóban megtudjuk, hogyan hozhat létre adatbázist PostgreSQL-ben a createb paranccsal.

Előfeltételek:

Az ebben az útmutatóban bemutatott lépések végrehajtásához a következő összetevőkre van szüksége:

  • Egy megfelelően konfigurált Linux rendszer. A teszteléshez fontolja meg virtuális Ubuntu gép beállítása VirtualBox segítségével .
  • Telepített és konfigurált PostgreSQL. Tudj meg többet PostgreSQL telepítése Ubuntura .
  • Hozzáférés a nem root felhasználó sudo jogosultsággal .

PostgreSQL adatbázisok

PostgreSQL egy ingyenes és nyílt forráskódú SQL-kompatibilis objektum-relációs adatbázisrendszer. Relációs (SQL) és nem relációs (JSON) lekérdezéssel is működhet. Tudjon meg többet a a PostgreSQL szolgáltatásai .







A PostgreSQL-ben az adathierarchia a következő:



  • fürt
  • adatbázis
  • séma
  • táblázat (vagy más objektumok, például függvény)

Bármely PostgreSQL-példány több ügyfélkapcsolatot is fogadhat. Az ügyfélnek meg kell adnia az adatbázis nevét a csatlakozási kérelemben. Kapcsolatonként csak egy adatbázis engedélyezett. Egy kliens azonban több kapcsolatot is nyithat a kiszolgálóval, és egyszerre csatlakozhat egy vagy több adatbázishoz.



Adatbázis létrehozása PostgreSQL-ben

1. Kapcsolat megnyitása a szerverrel

Új adatbázis létrehozásához először csatlakozzon a PostgreSQL szerverhez:





$ sudo -én -ban ben postgres
$ psql

Vegye figyelembe, hogy az adatbázis létrehozása korlátozott művelet. Csak megfelelő jogosultsággal rendelkező felhasználók hajthatják végre a műveletet.



2. Az aktuális adatbázisok listázása
Futtassa a következő lekérdezést psql-ben a kiszolgálón lévő adatbázisok listájának kinyomtatásához:

$ \lista

A telepítés során a PostgreSQL létrehozza a szerver első adatbázisát, amely a „postgres”. Két további adatbázis is létrejön:

  • sablon 1 : Amikor új adatbázist hoz létre a fürtön belül, a „template1” klónozásra kerül.
  • sablon0 : A „sablon1” eredeti tartalmának érintetlen másolataként szolgál.

Ne hozzon létre objektumokat a „template1”-en belül, hacsak nem szeretné, hogy minden újonnan létrehozott adatbázis részei legyenek. Ha a „sablon1” módosul, a „template0” klónozható új adatbázis létrehozásához helyi helyi kiegészítések nélkül.

3. Új adatbázis létrehozása
Új adatbázis létrehozásához futtassa a következő lekérdezést psql-ben:

$ ADATBÁZIS LÉTREHOZÁSA < db_name > ;

Itt:

  • A jelenlegi szerepkör automatikusan felveszi az új adatbázis tulajdonosát.
  • A tulajdonosnak megvan a kiváltsága, hogy a tulajdonost más szerepkörre cserélje.

Ha a művelet sikeres volt, ellenőrizze az adatbázisok listáját a következő paranccsal:

$ \lista

Privilegizált fiókkal a következő paranccsal is létrehozhatunk adatbázist valaki más számára:

$ ADATBÁZIS LÉTREHOZÁSA < db_name > TULAJDONOS < szerep > ;

A Createdb parancs

Az előző módszernél több lépést kellett végrehajtanunk az adatbázis létrehozásához:

  • Csatlakozzon a PostgreSQL szerverhez psql használatával.
  • Futtassa a lekérdezéseket új adatbázis létrehozásához.

A folyamat egyszerűsítése érdekében a PostgreSQL a Createb paranccsal érkezik. Alapvetően ezeknek a műveleteknek a burkolójaként működik. A Createb parancsot közvetlenül futtathatjuk a shellből.

1. Adatbázis létrehozása Createdb segítségével
Adatbázis létrehozásához az alapértelmezett adatbázis-kiszolgáló használatával használja a következő parancsot:

$ létrehozvab < db_name >

Ellenőrizze a műveletet a következő paranccsal:

$ psql -c '\lista'

Különféle lehetőségekkel finomhangolhatjuk a létrehozottb műveleteket is. Nézze meg a következő példát:

$ létrehozvab -h < házigazda > -o < kikötő > -T < sablon > -Ez --felhasználónév = < felhasználónév > --Jelszó --karbantartás-db = < karbantartási_adatbázis_neve > < db_name >

Itt:

  • -h : Ez a paraméter határozza meg a PostgreSQL szerver helyét (IP-cím vagy tartománynév).
  • -o : A szerverhez való csatlakozás portja.
  • -T : Az új adatbázis létrehozásakor használandó sablon. Ez lehet template0, template1 vagy bármilyen más adatbázis.
  • -Ez : Az egyenértékű lekérdezést visszhangozza.
  • -felhasználónév : A szerverhez való csatlakozáshoz szükséges felhasználónév.
  • -Jelszó : Kényszeríti a Createb parancsot, hogy jelszót kérjen a kiszolgálóhoz való csatlakozás előtt. A legtöbb esetben ez nem szükséges, mivel a Createb automatikusan jelszót kér, ha a kiszolgáló megköveteli. Ennek kiderítésére azonban egy csatlakozási kísérletet fordít.
  • –karbantartás-db : Az adatbázis, amelyhez csatlakozni kell az új adatbázis létrehozásakor. Ha nincs megadva, a postgres alapértelmezés szerint feltételezhető. Ha a postgres nem létezik, akkor a „template1” feltételezi.

Ideje működésbe hozni. Futtassa a következő Createb parancsot:

$ létrehozvab -h helyi kiszolgáló -o 5432 -T sablon0 -Ez --felhasználónév =postgres teszt_db

Ahogy a kimenet is sugallja, ez egyenértékű a következő lekérdezéssel:

$ ADATBÁZIS LÉTREHOZÁSA test_db TEMPLATE template0;

További adatbázis-kezelés

Ebben a részben vessünk egy pillantást más adatbázis-kezelési műveletekre.

Az adatbázisok listázása

A kiszolgálón tárolt adatbázisok listázására több lehetőség is van. Az előző szakaszokban már bemutattunk egy módszert:

$ \lista

Egy másik módszer a „pg_database” rendszerkatalógus vizsgálata:

$ SELECT adatnév FROM pg_adatbázis;

Adatbázis törlése

Adatbázis törléséhez futtassa a következő lekérdezést:

$ DROP ADATBÁZIS < db_name > ;

A Createb-hez hasonlóan a PostgreSQL is a dropdb paranccsal érkezik, amelyet a shellből tudunk futtatni. Vessen egy pillantást a következő példára:

$ dropdb -h < házigazda > -o < kikötő > --felhasználónév = < felhasználónév > --Jelszó -Ez < db_name >

Itt:

  • -h : A PostgreSQL szerver, amelyhez csatlakozni kell.
  • -o : A PostgreSQL szerver portja, amelyhez csatlakozni kell.
  • -Ez : Az egyenértékű lekérdezést visszhangozza.

Vegye figyelembe, hogy a felhasználónak elegendő jogosultsággal kell rendelkeznie az adatbázis törléséhez.

Adatbázis-tulajdonjog megváltoztatása

Az adatbázis tulajdonosa bármilyen műveletet végrehajthat az adatbázison, beleértve az adatbázis törlését is. Alapértelmezés szerint az adatbázist létrehozó felhasználó van hozzárendelve tulajdonosként. A tulajdonjogot azonban átruházhatjuk egy másik felhasználóra.

Az adatbázis tulajdonosának megváltoztatásához futtassa a következő lekérdezést psql-ben:

$ ADATBÁZIS MÓDOSÍTÁSA < db_name > TULAJDONOS < új tulajdonos > ;

Ez azonban nem változtatja meg az adatbázisban lévő objektumok (beleértve a táblákat) tulajdonjogát. Ilyen esetekben más lekérdezést kell használnunk. Csatlakozzon a céladatbázishoz, és futtassa a következő lekérdezést:

$ ÚJRA OSZTÁLYOZÁS A TULAJDONÁBAN < régi_tulajdonos > NAK NEK < új tulajdonos > ;

Bár kényelmes, ez a lekérdezés néhány figyelmeztetést tartalmaz:

  • A postgreshez (adatbázishoz) való csatlakozáskor egyszerre több adatbázis tulajdonjogát is megváltoztathatja.
  • Ne használja ezt a lekérdezést, ha az eredeti tulajdonos a postgres, mert megsértheti a teljes DB-példányt.

Bónusz: A lekérdezések futtatása a Shellből

Eddig a PostgreSQL konzolról futtattuk a lekérdezéseket. Mi a teendő, ha néhány adatbázis-funkciót szeretne beépíteni a szkriptjeibe? A createb és dropdb parancsok csak meghatározott műveleteket tudnak végrehajtani.

Ennek megoldására a psql-t használhatjuk csatornaként. A szabványos interaktív shell mellett a psql is futtathatja a lekérdezéseket menet közben.

1. módszer:

A parancs szerkezete a következő:

$ psql -h < házigazda > -o < kikötő > -BAN BEN < felhasználónév > -d < adatbázis > -c < lekérdezés >

Itt:

  • -h : A PostgreSQL szerver címe.
  • -o : A port, amelyhez csatlakozni kell (alapértelmezett érték 5432).
  • -BAN BEN : A felhasználó, akihez csatlakozni kell.
  • -d : Az adatbázis, amelyhez csatlakozni kell.
  • -c : A végrehajtandó lekérdezés.

2. módszer:

A PostgreSQL egy másik érdekes funkcióval is rendelkezik: a csatlakozási URI. Ez egy ügyes módja az összes kapcsolati paraméter pontos kódolásának. A kapcsolati URI felépítése a következő:

$ postgresql: //< felhasználónév > : < Jelszó >@< házigazda > : < kikötő >/< db_name >

Itt:

  • postgresql vagy postgres : A PostgreSQL kapcsolati URI egyedi protokollja.

Adatbázishoz a csatlakozási URI használatával történő csatlakozáshoz használja a következő psql parancsot:

$ psql -d < kapcsolat_uri > -c < lekérdezés >

Következtetés

Megismertük az adatbázisok létrehozásának különféle módjait a PostgreSQL-ben. Bemutattuk, hogyan lehet adatbázist létrehozni a CREATE DATABASE lekérdezéssel. Bemutattuk az adatbázis létrehozását is a createb paranccsal. Ezen kívül néhány más fontos adatbázis-kezelési műveletet is elhallgattunk, mint például az adatbázisok törlése és a tulajdonos megváltoztatása.

Szeretne többet megtudni a PostgreSQL-ről? Nézze meg a PostgreSQL alkategória y, amely számos útmutatót tartalmaz a különféle funkciókról; például: funkciókat , reguláris kifejezések , táblázatok , és még sok más.