Kuumad varukoopiad Percona XtraBackupiga ühe klõpsuga WordPressi rakenduses

Sisukord

  • Sissejuhatus
  • Eeltingimused
  • 1. samm: looge mitte-juursüsteemi kasutaja
  • 2. samm: kontrollige salvestusmootorit
  • 3. samm: looge varundamiseks andmebaasi kasutaja
  • 4. samm: installige Percona XtraBackup
  • 5. samm: looge varukoopiate salvestuskataloogid
  • 6. samm: looge esimene täielik varukoopia
  • 7. samm: looge järgmised järkjärgulised varukoopiad
  • 8. samm: valmistage andmebaasi taastamiseks ette varukoopiad
  • 9. samm: taastage andmebaas
  • Edasised sammud

Sissejuhatus

Percona XtraBackup on tasuta MySQL-põhine programm, mida kasutatakse kuumade varukoopiate tegemiseks. See on ka avatud lähtekoodiga. Percona XtraBackupiga saate teha MySQL-i, MariaDB- või Percona Serveri andmebaaside kuumi varukoopiaid ilma andmebaasiteenust peatamata või kirjutuskaitstuks muutmata. See on paljude veebiettevõtete jaoks ärikriitiline funktsioon.

InnoDB, XtraDB ja HailDB salvestusmootoreid kasutavate andmebaaside puhul saab Percona XtraBackup teha mitteblokeerivaid varukoopiaid. Andmebaaside puhul, mis kasutavad MyISAM-i, Merge- ja Archive-salvestusmootoreid, saab Percona XtraBackup teha ka varukoopiaid, peatades varundusprotseduuri lõpus kirjutamise korraks.

Selles artiklis näitan teile, kuidas installida ja kasutada Percona XtraBackupi, et teha Vultri serveris ühe klõpsuga WordPressi rakendusel põhinevaid täielikke ja järkjärgulisi kuumvarukoopiaid. Teeme täieliku varukoopia ja kaks järkjärgulist varukoopiat ning seejärel taastame andmebaasi vastavalt iga kolme varukoopia olekusse.

Eeltingimused

Eeldan, et olete juurutanud ühe klõpsuga WordPress Vultr serveri eksemplari nullist ja loginud sisse root kasutajana, kasutades SSH-d.

1. samm: looge mitte-juursüsteemi kasutaja

Turvalisuse huvides on soovitatav luua teine ​​kasutajakonto juurõigustega, seejärel kasutada seda süsteemi sisselogimiseks ja igapäevaste toimingute tegemiseks. Selle käsuga saate siiski täita peaaegu kõiki superkasutaja käske sudo.

1) Looge uus kasutaja. Asenda sysuseroma kasutajanimega.

useradd sysuser

2) Määrake oma uuele kasutajale parool. Asenda sysuseroma kasutajanimega.

passwd sysuser

3) Andke oma uuele kasutajale juurõigused.

visudo

Leidke allpool olev lõik.

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

Lisage rida otse selle lõigu alla, asendage see sysuseroma kasutajanimega.

sysuser     ALL=(ALL)     ALL

Salvestage ja lõpetage.

:wq

4) Lülituge oma uuele kasutajakontole.

logout

Seejärel kasutage oma terminaliaknast sisselogimiseks uue kasutaja mandaate.

2. samm: kontrollige salvestusmootorit

Vaikimisi salvestatakse MySQL-i juursisselogimine VPS-i asukohas /root/.my.cnf. Kuvage terminalis parool järgmise käsuga.

sudo cat /root/.my.cnf

Kasutage MySQL-i konsooli sisselogimiseks ekraanil kuvatavat mandaati.

mysql -u root -p

Käivitage MySQL-i kestas järgmine.

SHOW DATABASES;

Kõik MySQL-i andmebaasid kuvatakse ekraanil. Andmebaas nimega nagu wp5273512on WordPressi andmebaas, mida tahame varundada. Järgmises käsus asendage wp5273512oma käsuga :

USE wp5273512;

Kontrollige iga tabeli salvestusmootorit:

SHOW TABLE STATUS\G

Leiate, et kõik teie WordPressi MySQL-i andmebaasi tabelid kasutavad InnoDB-salvestusmootorit, mis sobib suurepäraselt kuumade varukoopiate tegemiseks Percona XtraBackupiga.

Kõigi teiste MySQL-i andmebaaside puhul, mis kasutavad MyISAM-i salvestusmootorit, saame need siiski varundada Percona XtraBackupiga, peatades lühiajaliselt kirjutamise.

3. samm: looge varundamiseks andmebaasi kasutaja

Ikka MySQL-i kestas kasutage varundamiseks spetsiaalse andmebaasi kasutaja loomiseks järgmisi käske. Ärge unustage asendada andmebaasi kasutajanimi xbuserja parool xbpasswdenda omadega:

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;

Ülaltoodud õigused on vajalikud Percona XtraBackupi täielikuks funktsionaalsuseks. Funktsionaalsuse vähendamise ja parema turvalisuse huvides saate mõned neist eemaldada. Lisateabe saamiseks vaadake Percona XtraBackup ametlikku veebisaiti .

4. samm: installige Percona XtraBackup

Saate installida Percona XtraBackup Percona RPM-i hoidlast üsna lihtsalt:

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

5. samm: looge varukoopiate salvestuskataloogid

Esiteks, sa pead lisada kasutaja sysuser, et mysqlrühm. Asenda sysuseroma kasutajanimega.

sudo gpasswd -a sysuser mysql

Looge täielike varukoopiate salvestamiseks kataloog.

sudo mkdir -p /dbbackup/full/

Looge täiendavate varukoopiate salvestamiseks teine ​​kataloog.

sudo mkdir -p /dbbackup/inc/

Muutke nende kataloogide omanik kasutajaks sysuserja rühmaks sysuser.

sudo chown -R sysuser:sysuser /dbbackup

Nende muudatuste jõustumiseks logige välja.

logout

Seejärel logige sysuseruuesti sisse.

6. samm: looge esimene täielik varukoopia

XtraBackup koosneb peamiselt XtraBackupi programmist ja innobackupexperli skriptist. Tavaliselt saate innobackupexmugavuse huvides kasutada perli skripti erinevate töötoimingute tegemiseks.

Esimese täieliku varukoopia loomiseks sisestage järgmine käsk. Ärge unustage asendada andmebaasi kasutajanimi xbuser, andmebaasi kasutaja parool xbpasswdja kogu varukoopiakataloog /dbbackup/full/enda omadega.

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

Kui see käsk on õigesti täidetud, näete kinnitusteadet "innobackupex: lõpetatud OK!" väljundi viimasel real.

Kõik selle täieliku varukoopia vastloodud failid salvestatakse ajatempliga kataloogi all /dbbackup/full/. Näiteks /dbbackup/full/2015-05-22_05-45-54.

7. samm: looge järgmised järkjärgulised varukoopiad

Esimese järkjärgulise varukoopia loomiseks sisestage järgmine käsk. Asendage muutujad käsus vastavalt.

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

Jälle näete "innobackupex: lõpetatud OK!" väljundi lõpus, kui käsk täidetakse edukalt. Varundusfailid salvestatakse ajatempliga kataloogi all /dbbackup/inc/.

Teise järkjärgulise varukoopia loomiseks sisestage järgmine käsk. Asendage muutujad käsus vastavalt.

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

Edu korral näete teadet "innobackupex: lõpetatud OK!" sõnum uuesti. /dbbackup/inc/Varundusfailide nägemiseks kontrollige kausta uuesti.

8. samm: valmistage andmebaasi taastamiseks ette varukoopiad

Kõik andmebaasi varukoopiafailid tuleb ette valmistada, enne kui neid saab andmebaasi taastamiseks kasutada.

Märkus . Enne ettevalmistus- ja taastamistoimingute sooritamist hoidke parem kogu varukoopiakataloogi koopia (nt /dbbackup/) teises kohas juhuks, kui failide varundamine on eksikombel põhjustatud.

Igas varukataloogis on fail nimega, xtrabackup_checkpointsmis sisaldab varukoopia tüüpi ning logi alguse ja lõpu järjekorranumbreid ( from_lsnja to_lsn). Neid numbreid saate kasutada oma andmebaasi taastamise strateegia selgitamiseks. Vaadake allolevaid näiteid.

Kui xtrabackup_checkpointsfaili esimese täieliku varukoopia, mul on:

backup_type = full-backuped
from_lsn = 0
to_lsn = 2932478

Kui xtrabackup_checkpointsfaili esimese varundamist, mul on:

backup_type =incremental
from_lsn = 2932478
to_lsn = 2970177

Kui xtrabackup_checkpointsfaili teise varundamist, mul on:

backup_type = incremental
from_lsn = 2970177
to_lsn = 3004672

Lühidalt öeldes peaksite iga varukoopiaga tegelema lsn-i kasvavas järjekorras. Kui lsn-jada on mittetäielik või rikutud, võite andmed kaotada.

Märkus . Järgmised käsud hõlmavad kolme kataloogi, asendage need enda omadega.

Andmebaasi taastamiseks esimese täieliku varukoopia olekusse peate varundamisfailid ette valmistama järgmise käsuga:

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

Andmebaasi taastamiseks esimese järkjärgulise varundamise olekusse peate varundamisfailid ette valmistama järgmiste käskudega:

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

Andmebaasi taastamiseks teise järkjärgulise varundamise olekusse peate varundamisfailid ette valmistama järgmiste käskudega:

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

Märkused :

Täiendavate varukoopiate jaoks peaksite kasutama --redo-onlysuvandit kõigi varunduste puhul, välja arvatud viimane. Sellegipoolest on selle suvandi kasutamine viimasel järkjärgulisel varukoopial endiselt kahjutu teie andmete järjepidevusele – see põhjustab andmebaasi tagasipööramise tõttu vaid mõningast viivitust.

Iga järkjärgulise stsenaariumi viimane käsk on valikuline, kuid soovitatav, kuna see kiirendab taastamist.

Pärast ettevalmistamist lisatakse varundusfailides salvestatud muudatused ettevalmistatud täieliku varukoopia baasfailidele, seega peaksite andmebaasi taastamiseks alati kasutama ettevalmistatud täielikke varukoopiaid, olenemata sellest, kas valite täieliku või järkjärgulise varukoopia.

9. samm: taastage andmebaas

Enne andmebaasi taastamist peate andmebaasiteenuse peatama.

sudo service mysqld stop

Samuti peate tühjendama andmebaasi kataloogi. Ettevaatusabinõuna saate praegused andmebaasifailid teise kohta teisaldada.

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

Taastage oma andmebaas ettevalmistatud "täieliku varukoopia" failidega.

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

Kuna taastamise protseduur muudab andmebaasikataloogi omanikku, peate selle uuesti mysql:mysqltööle panema.

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

Taaskäivitage andmebaasiteenus.

sudo service mysqld start

See on kõik. Siinkohal saate külastada oma WordPressi saiti, et kontrollida, kas taastamisprotsess oli edukas.

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit