Vruće sigurnosne kopije s Percona XtraBackup na WordPress aplikaciji jednim klikom

Vruće sigurnosne kopije s Percona XtraBackup na WordPress aplikaciji jednim klikom

Sadržaj

  • Uvod
  • Preduvjeti
  • Korak 1: Stvorite korisnika sustava koji nije korijenski
  • Korak 2: Provjerite mehanizam za pohranu
  • Korak 3: Stvorite korisnika baze podataka za sigurnosno kopiranje
  • Korak 4: Instalirajte Percona XtraBackup
  • Korak 5: Napravite direktorije za pohranu sigurnosnih kopija
  • Korak 6: Napravite prvu potpunu sigurnosnu kopiju
  • Korak 7: Napravite sljedeće inkrementalne sigurnosne kopije
  • Korak 8: Pripremite datoteke sigurnosne kopije za vraćanje baze podataka
  • Korak 9: Vratite bazu podataka
  • Daljnji koraci

Uvod

Percona XtraBackup je besplatni program baziran na MySQL-u koji se koristi za izradu vrućih sigurnosnih kopija. Također je otvorenog koda. Uz Percona XtraBackup, možete napraviti vruće sigurnosne kopije pokrenutih MySQL, MariaDB ili Percona Server baza podataka bez zaustavljanja vaše usluge baze podataka ili omogućavanja da je samo za čitanje. Ovo je poslovno kritična značajka za mnoge online tvrtke.

Za baze podataka koje koriste InnoDB, XtraDB i HailDB mehanizme za pohranu, Percona XtraBackup može izvesti neblokirajuće sigurnosne kopije. Za baze podataka koje koriste MyISAM, Merge i Archive mehanizme za pohranu, Percona XtraBackup također može napraviti sigurnosne kopije kratkim pauziranjem pisanja na kraju postupka sigurnosnog kopiranja.

U ovom članku pokazat ću vam kako instalirati i koristiti Percona XtraBackup za izvođenje potpunih i inkrementalnih vrućih sigurnosnih kopija na Vultr poslužitelju temeljenom na WordPress aplikaciji jednim klikom. Izvršit ćemo potpunu sigurnosnu kopiju i dvije inkrementalne sigurnosne kopije, a zatim ćemo vratiti bazu podataka u stanje svake od tri sigurnosne kopije u skladu s tim.

Preduvjeti

Pretpostavljam da ste ispočetka implementirali instancu poslužitelja WordPress Vultr jednim klikom i da ste se prijavili kao root, koristeći SSH.

Korak 1: Stvorite korisnika sustava koji nije korijenski

Iz sigurnosnih razloga, preporučena praksa je stvoriti drugi korisnički račun s root dopuštenjima, a zatim ga koristiti za prijavu i obavljanje svakodnevnih operacija na sustavu. Još uvijek možete izvršiti gotovo sve naredbe superkorisnika s sudonaredbom.

1) Stvorite novog korisnika. Zamijenite sysuservlastitim korisničkim imenom.

useradd sysuser

2) Postavite lozinku za novog korisnika. Zamijenite sysuservlastitim korisničkim imenom.

passwd sysuser

3) Dodijelite root dopuštenja svom novom korisniku.

visudo

Pronađite odlomak u nastavku.

## Allow root to run any commands anywhere
root     ALL=(ALL)     ALL

Dodajte redak neposredno ispod ovog odlomka, zamijenite ga sysusersvojim korisničkim imenom.

sysuser     ALL=(ALL)     ALL

Spremite i zatvorite.

:wq

4) Prijeđite na svoj novi korisnički račun.

logout

Zatim upotrijebite vjerodajnice novog korisnika za prijavu iz prozora terminala.

Korak 2: Provjerite mehanizam za pohranu

Prema zadanim postavkama, MySQL root prijava sprema se na VPS u /root/.my.cnf. Prikažite lozinku u svom terminalu sljedećom naredbom.

sudo cat /root/.my.cnf

Upotrijebite vjerodajnice prikazane na ekranu za prijavu na MySQL konzolu.

mysql -u root -p

U MySQL ljusci pokrenite sljedeće.

SHOW DATABASES;

Sve MySQL baze podataka bit će prikazane na ekranu. Baza podataka nazvana kao wp5273512je WordPress baza podataka koju želimo sigurnosno kopirati. U sljedećoj naredbi zamijenite wp5273512svojom:

USE wp5273512;

Provjerite mehanizam za pohranu za svaku tablicu:

SHOW TABLE STATUS\G

Otkrit ćete da sve tablice u vašoj WordPress MySQL bazi podataka koriste InnoDB mehanizam za pohranu koji je savršen za izvođenje vrućih sigurnosnih kopija s Percona XtraBackup.

Za sve druge MySQL baze podataka koje koriste MyISAM mehanizam za pohranu, još uvijek ih možemo sigurnosno kopirati pomoću Percona XtraBackup kratkim pauziranjem upisivanja.

Korak 3: Stvorite korisnika baze podataka za sigurnosno kopiranje

Još uvijek u MySQL ljusci, koristite sljedeće naredbe za stvaranje namjenskog korisnika baze podataka za sigurnosnu kopiju. Ne zaboravite zamijeniti korisničko ime baze podataka xbuseri lozinku xbpasswdsvojim vlastitim:

CREATE USER 'xbuser'@'localhost' IDENTIFIED BY 'xbpasswd';
GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT, CREATE TABLESPACE, PROCESS, SUPER, CREATE, INSERT, SELECT ON *.* TO 'xbuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Gore dodijeljene povlastice potrebne su za punu Percona XtraBackup funkcionalnost. Neke od njih možete ukloniti radi manje funkcionalnosti i bolje sigurnosti. Za više pojedinosti pogledajte službenu web stranicu Percona XtraBackup .

Korak 4: Instalirajte Percona XtraBackup

Percona XtraBackup možete vrlo jednostavno instalirati iz Perconinog RPM repozitorija:

sudo yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
sudo yum install -y percona-xtrabackup

Korak 5: Napravite direktorije za pohranu sigurnosnih kopija

Prvo morate dodati korisnika sysuseru mysqlgrupu. Zamijenite sysuservlastitim korisničkim imenom.

sudo gpasswd -a sysuser mysql

Stvorite direktorij za pohranu potpunih sigurnosnih kopija.

sudo mkdir -p /dbbackup/full/

Napravite drugi direktorij za pohranu inkrementalnih sigurnosnih kopija.

sudo mkdir -p /dbbackup/inc/

Promijenite vlasnika ovih direktorija u korisnika sysuseri grupe sysuser.

sudo chown -R sysuser:sysuser /dbbackup

Odjavite se da biste ove promjene primijenili.

logout

Zatim se sysuserponovno prijavite s .

Korak 6: Napravite prvu potpunu sigurnosnu kopiju

XtraBackup se prvenstveno sastoji od programa XtraBackup i innobackupexperl skripte. Obično možete koristiti innobackupexperl skriptu za izvođenje različitih operativnih postupaka radi praktičnosti.

Unesite sljedeću naredbu za stvaranje prve potpune sigurnosne kopije. Ne zaboravite zamijeniti korisničko ime xbuserbaze podataka, korisničku lozinku baze podataka xbpasswdi puni direktorij sigurnosne kopije /dbbackup/full/svojim vlastitim.

sudo innobackupex --user=xbuser  --password=xbpasswd /dbbackup/full/

Ako se ova naredba ispravno izvrši, vidjet ćete poruku potvrde "innobackupex: završeno OK!" na posljednjoj liniji izlaza.

Sve novostvorene datoteke ove potpune sigurnosne kopije bit će pohranjene u direktoriju s vremenskim žigom pod /dbbackup/full/. Na primjer, /dbbackup/full/2015-05-22_05-45-54.

Korak 7: Napravite sljedeće inkrementalne sigurnosne kopije

Unesite sljedeću naredbu za stvaranje prve inkrementalne sigurnosne kopije. U skladu s tim zamijenite varijable u naredbi.

sudo innobackupex --user=xbuser  --password=xbpasswd --incremental --incremental-basedir=/dbbackup/full/2015-05-22_05-45-54 /dbbackup/inc/

Opet ćete vidjeti "innobackupex: završeno OK!" na kraju izlaza kada se naredba uspješno izvrši. Datoteke sigurnosne kopije bit će pohranjene u imeniku s vremenskim žigom pod /dbbackup/inc/.

Unesite sljedeću naredbu za stvaranje druge inkrementalne sigurnosne kopije. U skladu s tim zamijenite varijable u naredbi.

sudo innobackupex --user=xbuser  --password=xbpasswd --incremental --incremental-basedir=/dbbackup/inc/2015-05-22_05-48-12 /dbbackup/inc/

Nakon uspjeha, vidjet ćete "innobackupex: završeno OK!" opet poruku. /dbbackup/inc/Ponovno provjerite mapu da biste vidjeli sigurnosne kopije datoteka.

Korak 8: Pripremite datoteke sigurnosne kopije za vraćanje baze podataka

Sve datoteke sigurnosne kopije baze podataka moraju biti pripremljene prije nego što se mogu koristiti za vraćanje baze podataka.

Napomena : Prije nego što izvršite postupke pripreme i vraćanja, bolje je sačuvati kopiju cijelog direktorija sigurnosne kopije (kao što je /dbbackup/) na drugom mjestu u slučaju da greškom dođe do oštećenja sigurnosnih kopija datoteka.

U svakom direktoriju sigurnosne kopije nalazi se datoteka s imenom xtrabackup_checkpointskoja sadrži vrstu sigurnosne kopije i redovne brojeve početka i kraja dnevnika ( from_lsni to_lsn). Možete koristiti te brojeve da razjasnite svoju strategiju vraćanja baze podataka. Pogledajte primjere u nastavku.

U xtrabackup_checkpointsdatoteci prve potpune sigurnosne kopije imam:

backup_type = full-backuped
from_lsn = 0
to_lsn = 2932478

U xtrabackup_checkpointsdatoteci prve inkrementalne sigurnosne kopije imam:

backup_type =incremental
from_lsn = 2932478
to_lsn = 2970177

U xtrabackup_checkpointsdatoteci druge inkrementalne sigurnosne kopije imam:

backup_type = incremental
from_lsn = 2970177
to_lsn = 3004672

Ukratko, trebali biste se pozabaviti svakom sigurnosnom kopijom s rastućim redoslijedom lsn. Ako je lsn sekvenca nepotpuna ili neuređena, možete izgubiti podatke.

Napomena : Sljedeće naredbe uključuju tri direktorija, zamijenite ih svojim.

Da biste bazu podataka vratili u stanje prve potpune sigurnosne kopije, morate pripremiti sigurnosne kopije sljedećom naredbom:

sudo innobackupex --apply-log /dbbackup/full/2015-05-22_05-45-54

Za vraćanje baze podataka u stanje prve inkrementalne sigurnosne kopije, morate pripremiti sigurnosne kopije pomoću sljedećih naredbi:

sudo innobackupex --apply-log --redo-only /dbbackup/full/2015-05-22_05-45-54
sudo innobackupex --apply-log /dbbackup/full/2015-05-22_05-45-54 --incremental-dir=/dbbackup/inc/2015-05-22_05-48-12
sudo innobackupex --apply-log /dbbackup/full/2015-05-22_05-45-54

Da biste bazu podataka vratili u stanje druge inkrementalne sigurnosne kopije, morate pripremiti datoteke sigurnosne kopije pomoću sljedećih naredbi:

sudo innobackupex --apply-log --redo-only /dbbackup/full/2015-05-22_05-45-54
sudo innobackupex --apply-log --redo-only /dbbackup/full/2015-05-22_05-45-54 --incremental-dir=/dbbackup/inc/2015-05-22_05-48-12
sudo innobackupex --apply-log /dbbackup/full/2015-05-22_05-45-54 --incremental-dir=/dbbackup/inc/2015-05-22_05-51-32
sudo innobackupex --apply-log /dbbackup/full/2015-05-22_05-45-54

napomene :

Za inkrementalne sigurnosne kopije, trebali biste koristiti --redo-onlyopciju za sve osim posljednje inkrementalne sigurnosne kopije. Ipak, korištenje ove opcije na posljednjoj inkrementalnoj sigurnosnoj kopiji i dalje je bezopasno za konzistentnost vaših podataka - samo će uzrokovati određeno kašnjenje zbog vraćanja baze podataka.

Posljednja naredba svakog inkrementalnog scenarija nije obavezna, ali se preporučuje jer će ubrzati vraćanje.

Nakon pripreme, promjene zabilježene u inkrementalnim datotekama sigurnosne kopije bit će pridodane pripremljenim osnovnim datotekama pune sigurnosne kopije, tako da uvijek trebate koristiti pripremljene potpune sigurnosne kopije za vraćanje baze podataka, bez obzira da li odaberete potpunu sigurnosnu kopiju ili inkrementalnu sigurnosnu kopiju.

Korak 9: Vratite bazu podataka

Prije nego što možete vratiti svoju bazu podataka, morate zaustaviti uslugu baze podataka.

sudo service mysqld stop

Također morate isprazniti direktorij baze podataka. Možete premjestiti trenutne datoteke baze podataka na drugo mjesto radi opreza.

sudo mkdir /currentdb
sudo mv /var/lib/mysql/* /currentdb

Vratite svoju bazu podataka s pripremljenim datotekama "full backup".

sudo innobackupex --copy-back /dbbackup/full/2015-05-22_05-45-54

Budući da će postupak vraćanja izmijeniti vlasnika direktorija baze podataka, morate ga promijeniti natrag u mysql:mysqlda bi postao operativan.

sudo chown -R mysql:mysql /var/lib/mysql

Ponovno pokrenite uslugu baze podataka.

sudo service mysqld start

To je to. U ovom trenutku možete posjetiti svoju WordPress stranicu kako biste provjerili je li proces vraćanja bio uspješan.


Instalirajte Plesk na CentOS 7

Instalirajte Plesk na CentOS 7

Korištenje drugog sustava? Plesk je vlasnička upravljačka ploča web hosta koja omogućuje korisnicima da administriraju svoje osobne i/ili klijentske web stranice, baze podataka

Postavite Cacti na Debian Jessie

Postavite Cacti na Debian Jessie

Uvod Cacti je alat otvorenog koda za praćenje i crtanje koji se u potpunosti temelji na RRD podacima. Putem Cactusa možete pratiti gotovo sve vrste uređaja

Instalirajte Lets Encrypt SSL na WordPress aplikaciju jednim klikom

Instalirajte Lets Encrypt SSL na WordPress aplikaciju jednim klikom

Uvod Lets Encrypt je usluga za izdavanje certifikata koja nudi besplatne TLS/SSL certifikate. Certbot pojednostavljuje proces instalacije,

Kako postaviti Tekkit Classic Server na Ubuntu 16.10

Kako postaviti Tekkit Classic Server na Ubuntu 16.10

Korištenje drugog sustava? Što je Tekkit Classic? Tekkit Classic je modpack za igru ​​koju svi znaju i vole; Minecraft. Sadrži neke od ver

Postavite iRedMail na Debian Wheezy

Postavite iRedMail na Debian Wheezy

Korištenje drugog sustava? Ovaj vodič će vam pokazati kako instalirati grupni softver iRedMail na novu instalaciju Debian Wheezyja. Trebali biste koristiti servis

Izrada Jekyll bloga na Ubuntu 16.04

Izrada Jekyll bloga na Ubuntu 16.04

Korištenje drugog sustava? Jekyll je izvrsna alternativa WordPressu za bloganje ili dijeljenje sadržaja. Ne zahtijeva nikakve baze podataka i vrlo je jednostavan i

Kako postaviti nenadzirane nadogradnje na Debianu 9 (protežu)

Kako postaviti nenadzirane nadogradnje na Debianu 9 (protežu)

Korištenje drugog sustava? Ako kupite Debian poslužitelj, uvijek biste trebali imati najnovije sigurnosne zakrpe i ažuriranja, bez obzira spavate li ili ne

Kako instalirati i konfigurirati PHP 7.0 ili PHP 7.1 na Ubuntu 16.04

Kako instalirati i konfigurirati PHP 7.0 ili PHP 7.1 na Ubuntu 16.04

PHP i povezani paketi najčešće su korištene komponente prilikom postavljanja web poslužitelja. U ovom članku ćemo naučiti kako postaviti PHP 7.0 ili PHP 7.1 o

Kako instalirati Squid proxy na CentOS

Kako instalirati Squid proxy na CentOS

Squid je popularan besplatni program za Linux koji vam omogućuje stvaranje web proxyja za prosljeđivanje. U ovom vodiču vidjet ćete kako instalirati Squid na CentOS da vas preokrene

Kako instalirati Lighttpd (LLMP Stack) na CentOS 6

Kako instalirati Lighttpd (LLMP Stack) na CentOS 6

Uvod Lighttpd je fork Apachea koji ima za cilj da bude puno manje intenzivan prema resursima. Lagan je, otuda mu i naziv, i prilično je jednostavan za korištenje. Instaliraj

Korištenje zaslona na Ubuntu 14.04

Korištenje zaslona na Ubuntu 14.04

Screen je aplikacija koja omogućuje višestruko korištenje terminalskih sesija unutar jednog prozora. To vam omogućuje da simulirate više prozora terminala gdje je ma

Postavite svoj vlastiti DNS poslužitelj na Debian/Ubuntu

Postavite svoj vlastiti DNS poslužitelj na Debian/Ubuntu

Ovaj vodič objašnjava kako postaviti DNS poslužitelj pomoću Bind9 na Debianu ili Ubuntu. U cijelom članku u skladu s tim zamijenite your-domain-name.com. Na th

Konfiguriranje statičkog umrežavanja i IPv6 na CentOS 7

Konfiguriranje statičkog umrežavanja i IPv6 na CentOS 7

VULTR je nedavno napravio promjene na svojoj strani i sada bi sve trebalo raditi dobro iz kutije s omogućenim NetworkManagerom. Želite li onemogućiti

Promjena Icinga2 za korištenje modela Master/Client na CentOS 6 ili CentOS 7

Promjena Icinga2 za korištenje modela Master/Client na CentOS 6 ili CentOS 7

Icinga2 je moćan sustav nadzora, a kada se koristi u modelu master-client, može zamijeniti potrebu za provjerama praćenja na temelju NRPE. Glavni klijent

Postavite Red5 Media Server na Ubuntu 16.04

Postavite Red5 Media Server na Ubuntu 16.04

Korištenje drugog sustava? Red5 je medijski poslužitelj otvorenog koda implementiran u Javi koji vam omogućuje pokretanje Flash višekorisničkih aplikacija kao što je live streamin

Prevedite i instalirajte Nginx s modulom PageSpeed ​​na Debian 8

Prevedite i instalirajte Nginx s modulom PageSpeed ​​na Debian 8

U ovom članku ćemo vidjeti kako sastaviti i instalirati Nginx mainline iz službenih izvora Nginxa s modulom PageSpeed, koji vam omogućuje da

Kako instalirati Vanilla Forum na Ubuntu 16.04

Kako instalirati Vanilla Forum na Ubuntu 16.04

Korištenje drugog sustava? Vanilla forum je aplikacija otvorenog koda napisana u PHP-u. Potpuno je prilagodljiv, jednostavan za korištenje i podržava eksterne

Kako instalirati Kanboard na Ubuntu 18.04 LTS

Kako instalirati Kanboard na Ubuntu 18.04 LTS

Korištenje drugog sustava? Uvod Kanboard je besplatni softver za upravljanje projektima otvorenog koda koji je dizajniran za olakšavanje i vizualizaciju

Kako instalirati Kanboard na Debian 9

Kako instalirati Kanboard na Debian 9

Korištenje drugog sustava? Uvod Kanboard je besplatni softver za upravljanje projektima otvorenog koda koji je dizajniran za olakšavanje i vizualizaciju

Kako instalirati Giteu na Debian 9

Kako instalirati Giteu na Debian 9

Korištenje drugog sustava? Gitea je alternativni sustav za kontrolu verzija otvorenog koda s vlastitim hostom koji pokreće Git. Gitea je napisana na Golangu i jest

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više