úvod

Strata údajov môže byť pre vás významným krokom späť, najmä vďaka vládnym sankciám za uloženú pokutu za stratu údajov o používateľovi.


Aby sa zmiernili škody spôsobené buď fyzickou katastrofou alebo útokom škodlivých hackerov, považuje sa za potrebné ako plán obnovy po katastrofe pravidelné zálohovanie..

S PostgreSQL existujú zásadne odlišné prístupy k zálohovaniu údajov, medzi ktoré patria:

  • Zálohovanie súborového systému, ktoré zahŕňa priame vytváranie kópií súborov, ktoré používa PostgreSQL na ukladanie údajov do databázy.
  • Nepretržitá archivácia a obnova v čase, ktorá zahŕňa protokoly zálohované a obnovené podľa potreby a databázu obnovenú do konzistentnosti nahradením položiek vykonaných počas posledného kontrolného bodu..
  • SQL výpis, ktorý zahŕňa generovanie príkazov, ktoré sa používajú na vytvorenie databázy a ich uloženie do súboru. Keď je tento súbor spustený, príkazy SQL sa použijú na opätovné vytvorenie databázy na jednoduchej šablóne.

V tejto príručke sa dozviete, ako vytvoriť zálohu a vykonať obnovu v databáze pomocou výpisu SQL.

Predtým ako začneš

Na splnenie tejto úlohy musia byť splnené tieto podmienky:

  • Používateľ bez oprávnenia root s oprávneniami sudo na VPS alebo na vyhradenom serveri so systémom Ubuntu 18.04.
  • Softvérový balík PostgreSQL nainštalovaný a nakonfigurovaný na vašom VPS. Dozviete sa, ako nainštalovať databázový server PostgreSQL na Ubuntu 18.04.
  • Vzorová databáza alebo konkrétne schémy / tabuľky, ktoré použijeme na zálohovanie a obnovenie (voliteľné, pretože vytvoríme našu vzorovú databázu na zálohovanie a obnovenie)..

kroky

pg_dumpis oficiálny databázový nástroj PostgreSQL, ktorý sa používa na zálohovanie databázy.

Chystáte sa vytvoriť vlastnú vzorovú databázu, aby ste ju mohli zálohovať a obnoviť.

$ sudo -i -u postgres psql
# CREATEDATABASE sampledb;
# c sampledb;
# CREATETABLE sampleTable (
# sampledb (# tableID SÉRIOVÉ PRIMÁRNE KĽÚČ,
# sampledb (# krstné meno VARCHAR,
# sampledb (# priezvisko VARCHAR,
# sampledb (# vek INT);
CreateTable
# CREATETABLE sampleTable2 (
# Table2ID SERIAL PRIMARY KEY,
# tableID INTREFERENCES sampleTable (tableID),
# location VARCHAR,
# monthsINT);
CreateTable

zálohovanie

Ukončite svoju databázu a vytvorte zálohu v jednoduchom formáte obyčajného textu.

$ pg_dump sampledb > sampledb.sql

Keď zobrazíte dumpingové údaje v sampledb.sql, mal by vyzerať podobne ako nasledujúci výpis z celého súboru.


— Výpis databázy PostgreSQL

— Vyradené z databázy verzie 10.5 (Ubuntu 10.5-0ubuntu0.18.04)
— Dumped by pg_dump, verzia 10.5 (Ubuntu 10.5-0ubuntu0.18.04)

SET Statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = ‘UTF8’;
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config (‘search_path’, ”, false);
SET check_function_bodies = false;
SET client_min_messages = warning;
SET row_security = off;


— Názov: plpgsql; Typ: ROZŠÍRENIE; Schéma: -; vlastník:

Môžete sa rozhodnúť vypísať dáta vo vašom VPS do formátu súboru, ktorý sa považuje za vhodnejší pre väčšie databázy, čo je komprimovaná metóda. Nasledujúci príkaz môžete použiť rovnako.

Nasledujúci súbor môžete použiť na kompresiu súboru do komprimovaného binárneho formátu.

$ pg_dump -Fc sampledb > sampledb.bak

Môžete tiež použiť nasledujúci príkaz na zálohovanie databázy vo formáte súboru tarball.

$ pg_dump -Ft sampledb > sampledb.tar

obnoviť

Teraz opustíte databázu z pohľadu príkazového riadku PostgreSQL a ukončíte ju.

# DROPDATABASE sampledb;
DROPDATABASE
# q

Pg_restore je databázový nástroj poskytovaný PostgreSQL na obnovenie vašej databázy.

Upozorňujeme, že musíte vytvoriť databázu, v ktorej budete obnovovať svoje údaje.

$ createdb sampledb

Ak existuje zo šablóny, môžete použiť nasledujúci príkaz, ak je vaša databáza vo formáte súboru .bak.

$ pg_restore -sampledb -Fc sampledb.bak

Ak je vo formáte súboru .tar, použite nasledujúci príkaz:

$ pg_restore -d sampledb -Ft sampledb.tar

záver

Úspešne ste zálohovali a obnovili svoju databázu pomocou pg_dumpa pg_restore databázové nástroje.

Upozorňujeme, že táto metóda súčasne zálohuje iba jednu databázu a nezálohuje rôzne úlohy, ktoré sú jej priradené, pretože sa nepovažuje za súčasť databázy. Ak chcete zálohovať každú databázu vrátane rôznych rolí, môžete použiť pomocný program thepg_dumpalldatabase vo formáte nižšie:

$ pg_dumpall > dumpfile

Vyskúšajte tieto top 3 hostingové služby pre Linux

FastComet

Vyvolávacia cena:
$ 2,95


Spoľahlivosť
9.7


stanovenie ceny
9.5


Užívatelsky prívetivý
9.7


podpora
9.7


Vlastnosti
9.6

Prečítajte si recenzie

Navštívte FastComet

Hostinger

Vyvolávacia cena:
$ 0.99


Spoľahlivosť
9.3


stanovenie ceny
9.3


Užívatelsky prívetivý
9.4


podpora
9.4


Vlastnosti
9.2

Prečítajte si recenzie

Navštívte Hostinger

ChemiCloud

Vyvolávacia cena:
$ 2,76


Spoľahlivosť
10


stanovenie ceny
9.9


Užívatelsky prívetivý
9.9


podpora
10


Vlastnosti
9.9

Prečítajte si recenzie

Navštívte stránku ChemiCloud

Súvisiace články s návodmi

  • Ako nainštalovať Ruby on Rails na Ubuntu 18
    stredná
  • Ako nainštalovať PostgreSQL databázový server na Ubuntu 18.04?
    stredná
  • Ako nastaviť replikáciu na PostgreSQL na serveri Ubuntu 18.04 VPS alebo na vyhradenom serveri
    stredná
  • Ako zakázať MySQL 5 "Prísny režim" na serveri Ubuntu 18.04 VPS alebo na vyhradenom serveri
    stredná
  • Ako zabezpečiť Postfix pomocou SpamAssassinu na serveri Ubuntu 18.04 VPS alebo na vyhradenom serveri
    stredná
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me