Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

4. diel - PostgreSQL - Export

Dnes si v PostgreSQL tutoriále vyskúšame vyexportovať našu databázu, čo sa nám bude určite mnohokrát hodiť. Opäť budeme používať iba prostredie pgAdmin.

Export (alebo aj "záloha") je súbor s SQL príkazmi, ktorý nám môže slúžiť na zálohu či migráciu databázy alebo len jej časti.

Export môžeme rozdeliť na:

  • kompletný export - súbor bude obsahovať ako štruktúru tabuliek, tak aj ich dáta
  • export štruktúry - súbor bude obsahovať iba štruktúru databázy takýto export môže obsahovať všetky alebo iba vybrané tabuľky
  • takýto export môže obsahovať všetky alebo iba vybrané tabuľky
  • export dát - súbor bude obsahovať iba dáta tabuliek tabuľky môžeme špecifikovať
  • tabuľky môžeme špecifikovať

Najprv musíme mať nejakú databázu s dátami, aby sme ich mohli exportovať. Pokiaľ žiadnu z minulých lekcií nemáme, môžeme si databázu i tabuľku uzivatel vytvoriť podľa tejto lekcie. Pokiaľ v tabuľke nemáme žiadne záznamy, môžeme si ich pár znovu vložiť týmto SQL príkazom:

INSERT INTO uzivatel
    (jmeno, prijmeni, datum_narozeni, pocet_clanku)
VALUES
    ('Jan', 'Novák', '1984-11-03', 17),
    ('Tomáš', 'Marný', '1989-02-03', 6),
    ('Josef', 'Nový', '1972-12-20', 9);

Máme v databáze teda minimálne tri záznamy osôb:

Tabuľka s údajmi - PostgreSQL databázy krok za krokom

Export dát

Skúsme si najprv exportovať dáta konkrétnej tabuľky. To môžeme urobiť tak, že pravým tlačidlom klikneme na danú tabuľku a zvolíme Import/Export...:
Import/Export… - PostgreSQL databázy krok za krokom

Otvorí sa nám dialóg, v ktorom môžeme nastaviť, či chceme exportovať alebo importovať a ďalšie podrobnejšie nastavenia, ako je napr. formát a umiestnenie exportu, kódovanie alebo separátor medzi stĺpcami.
Z formátov máme na výber:

  • binary - pre .bin súbory
  • csv - pre .csv súbory, využíva sa často na export do programu MS Excel
  • text - pre .txt súbory

My zvolíme export do formátu csv a nastavíme umiestnenie súboru. Kódovanie môžeme nechať nezvolené, v takom prípade sa zvolí UTF-8. Všetko ostatné necháme na východiskových hodnotách:

Export dialóg – záložka Options - PostgreSQL databázy krok za krokom

CSV (C omma S eparated V alues) je formát ukladania dát do textového súboru, v ktorom sú dáta jednotlivých stĺpcov oddelené čiarkou. Jeden riadok tabuľky potom vždy zodpovedá jednému riadku v súbore.

V záložke Columns môžeme nastaviť, aké stĺpce chceme v exporte zahrnúť. My necháme predvolené nastavenia, teda všetky stĺpce:

Export dialóg – záložka Columns - PostgreSQL databázy krok za krokom

Export potvrdíme tlačidlom OK:

Export completed - PostgreSQL databázy krok za krokom

pgAdmin nás hneď nato informuje o úspešnosti exportu.

Keď teraz otvoríme vygenerovaný súbor, tak uvidíme naše dáta:

1,Jan,Novák,1984-11-03,17
2,Tomáš,Marný,1989-02-03,6
3,Josef,Nový,1972-12-20,9

Súbor si uchovajte, budeme ho využívať pre budúci import :)

Export celej tabuľky

Pokiaľ chceme exportovať celú tabuľku, tzn. ako dáta, tak aj štruktúru tabuľky, tak musíme kliknúť pravým tlačidlom na danú tabuľku a zvoliť Backup...:
Backup… - PostgreSQL databázy krok za krokom

V dialógu, ktorý sa nám otvorí, opäť môžeme zvoliť formát a umiestnenie exportu. Z formátov máme na výber:

  • Custom - špeciálny archív typu .psql. Tento formát ponúka možnosť vybrať, ktoré databázové objekty sa majú z exportu obnoviť. Taktiež podporuje kompresiu, ktorej pomer môžeme nastaviť nižšie (maximálna nastaviteľná hodnota je 9).
  • Tar - archív typu .tar. Nepodporuje kompresiu.
  • Plain - súbor s SQL príkazmi pre vygenerovanie databázy
  • Directory - zložka s binárnym súborom pre každú tabuľku

My zvolíme možnosť Custom a nastavíme umiestnenie súboru. Všetko ostatné opäť necháme na východiskových hodnotách:

Backup dialóg – záložka General - PostgreSQL databázy krok za krokom

V tomto prípade môžeme taktiež určiť tzv. rolu (možnosť Role name). Tieto roly určujú oprávnenie na vykonanie nejakej akcie na databáze alebo na jej časti. Zvolená rola musí mať potrebné oprávnenia na vykonanie exportu a následného importu. Ako východisková sa nastaví rola postgres.

V záložke Dump options potom môžeme nastaviť ďalšie podrobnosti exportu. Napríklad ak chceme exportovať iba dáta alebo iba štruktúru (schéma), čo neukladať a mnohé ďalšie:

Backup dialóg – záložka Dump options - PostgreSQL databázy krok za krokom

Export potvrdíme tlačidlom Backup:

Backup completed - PostgreSQL databázy krok za krokom

pgAdmin nás hneď nato informuje o úspešnosti exportu.

Súbor si uchovajte pre budúci import.

Export celej databázy

Export celej databázy funguje skoro rovnako ako export celej tabuľky. Na databáze klikneme pravým tlačidlom, zvolíme Backup... av novootvorenom dialógu nastavíme formát a umiestnenie exportu:
Backup dialóg – záložka General - PostgreSQL databázy krok za krokom

Export opäť potvrdíme tlačidlom Backup:

Backup completed - PostgreSQL databázy krok za krokom

pgAdmin nás informuje o úspešnosti exportu.

Súbor si uchovajte pre budúci import.

V nasledujúcom kvíze, Kvíz - Tvorba, mazanie, vkladanie a export dát v PostgreSQL, si vyskúšame nadobudnuté skúsenosti z predchádzajúcich lekcií.


 

Predchádzajúci článok
PostgreSQL - Výber dát (vyhľadávanie)
Všetky články v sekcii
PostgreSQL databázy krok za krokom
Preskočiť článok
(neodporúčame)
Kvíz - Tvorba, mazanie, vkladanie a export dát v PostgreSQL
Článok pre vás napísal Radek Vymětalík
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
...
Aktivity