Mysql postavljanje sigurnosne kopije. backup mysql baze podataka

AT ovaj dokument detaljno opisuje principe i procedure koje se moraju poštovati za implementaciju strategije sigurnosnog kopiranja MySQL-a na nivou preduzeća kada se koristi Agent za MySQL.

Ovaj korisnički vodič opisuje različite metode i strategije za pravljenje rezervnih kopija i vraćanje MySQL baza podataka pomoću Enterprise Agenta. Ove metode takođe omogućavaju prilagođavanje i podešavanje softvera za poboljšanje performansi, efikasnosti, brzine i skalabilnosti različitih pristupa pravljenja rezervnih kopija MySQL baza podataka i srodnih podataka.

MySQL Auto Backup je dizajniran da pojednostavi i ubrza sigurnosne kopije MySQL baze podataka i MySQL vraćanja. Softver za sigurnosno kopiranje i vraćanje MySQL baze podataka je dizajnirano na takav način da administrator ne mora znati kako funkcionišu ugrađeni MySQL alati za pravljenje rezervnih kopija, niti biti u mogućnosti da kreira složene skripte. Automatski backup MySQL-a sa Baculom će se automatski kreirati backup važna informacija, kao što su konfiguracija ili korisničke definicije. MySQL sigurnosna kopija baze podataka također podržava dvije metode: dump i rezervnu kopiju binarnog dnevnika.

Backup MySQL je dostupan za 32-bitne i 64-bitne Linux platforme (Debian, Ubuntu, CentOS platforme, itd.) i podržava MySQL 4.0.x, 4.1.x, 5.0.x, 5.5.x, 5.6.x.

Kako napraviti sigurnosnu kopiju MySQL: dump ili binarni dnevnik?

Tabela u nastavku će vam pomoći da odaberete jednu od metoda sigurnosne kopije MySQL baze podataka. Da biste odabrali kako napraviti sigurnosnu kopiju MySQL baze podataka, morate odlučiti da li želite da budete u mogućnosti da vratite MySQL na određenu kontrolnu tačku ili da filtrirate objekte tokom MySQL sigurnosne kopije ili vraćanja. Također je moguće kombinirati oba MySQL backup metoda za isti server.

MySQL funkcije automatskog pravljenja rezervnih kopija Dump fajl binarni dnevnik
Mogućnost vraćanja jednog MySQL objekta (tabela, šema...) Da Ne
Brzina sigurnosnog kopiranja MySQL Polako Brzo
Brzina oporavka MySQL Tako sporo Brzo
Veličina sigurnosne kopije MySQL baze podataka Malo Veliko
Mogućnost vraćanja MySQL-a na kontrolnu tačku Da Da
MySQL inkrementalna/diferencijalna podrška za backup Da Da
MySQL online sigurnosna kopija Da Da
Dosljednost Da Da
Vraćanje MySQL-a na prethodnu glavnu verziju Da Ne
Mogućnost vraćanja MySQL-a na novu glavnu verziju Da Ne

Procjena informacija pri izradi sigurnosne kopije MySQL tablice

Tim procjena omogućava vam da prikažete sve informacije koje je pronašao MySQL agent. U slučaju dump moda, naš softver ne može procijeniti veličinu dump datoteke za bazu podataka. Umjesto toga, prikazat će veličinu baze podataka.

Informacije o sigurnosnom kopiranju MySQL-a u dump modu

MySQL agent će generisati sledeće datoteke u Bacula direktorijumu za server koji ima jednu "testnu" bazu podataka.

File Tip Objašnjenje
global-grants.sql globalno Spisak korisnika, njihove lozinke i posebne funkcije
settings.txt globalno Trenutne varijable za mysql server
my.cnf globalno MySQL konfiguracija
createdb.sql DB Skripta za kreiranje baze podataka
schema.sql DB Skripta za kreiranje šeme baze podataka
data.sql DB Podaci baze podataka u dump formatu
grants.sql DB Lista svih korisnika povezanih s bazom podataka

Tabela 2. Sadržaj MySQL sigurnosne kopije u dump modu

MySQL Recovery

Bacula vam omogućava da vratite MySQL sigurnosnu kopiju u nekoliko načina oporavka:

  • Vraćanje MySQL-a iz dump datoteke ili binarnih dnevnika
  • Vraćanje korisnika i uloga
  • Vraćanje jedne MySQL baze podataka
  • Vraćanje MySQL-a na kontrolnu tačku

Za vraćanje sigurnosne kopije MySQL-a u načinu binarnog dnevnika, agent koristi uslužni program percona.

Slika 3: Sadržaj servera tokom vraćanja MySQL-a

Slika 4: Sadržaj baze podataka tokom MySQL vraćanja

Kako besplatno napraviti sigurnosnu kopiju MySQL baze podataka bez korištenja dodatka

Izbacivanje MySQL baze podataka

Ova metoda je potpuno besplatna, jer vam omogućava da napravite sigurnosnu kopiju MySQL-a koristeći open source verziju Bacula Community i bez dodatnih dodataka. Jednostavne bash skripte se mogu koristiti za pravljenje rezervnih kopija malih MySQL baza podataka. Za slučaj pravljenja sigurnosne kopije MySQL baza podataka, možete napraviti skriptu za sigurnosnu kopiju MySQL koja će se izvoditi na klijentu i ispisati MySQL bazu podataka.

mysqldump -uuser -ppassword --sve-baze podataka | gzip > /opt/mysql_backup/backup.`datum +%F`.sql.gz

pronađi /home/bacula-backup/ -type f -mtime +3 -exec rm -f () \;

Ova MySQL skripta sigurnosne kopije će ispisati sve MySQL baze podataka u /opt/mysql_backup/ direktorij iz kojeg ćemo napraviti sigurnosnu kopiju dumpova baze podataka koristeći .

Primjer zadatka za pravljenje sigurnosne kopije MySQL baze podataka:

Name="BackupSmallMysqlServer"

Nivo = Inkrementalni

Klijent = mysqlserver1

FileSet="mysqlserver"

Raspored = "Sedmični ciklus"

Poruke = Standardne

ClientRunBeforeJob = "/opt/sbin/mysql.sh"

SpoolAttributes = da

Napišite Bootstrap = "/var/lib/bacula/%c.bsr"

name="mysqlserver"

kompresija = GZIP

Fajl = /opt/mysql_backup/

Ova metoda je primenljiva za pravljenje rezervnih kopija neučitanih MySQL baza podataka, kao što su baze podataka malih sajtova, za koje zaključavanje tabela tokom dumpa nije kritično.

Kako napraviti sigurnosnu kopiju učitanih MySQL baza podataka?

Ako je MySQL baza podataka jako opterećena, onda se ne preporučuje da se radi dump na njoj, jer su tabele zaključane tokom dumpa. Najispravnije rješenje u ovom slučaju je napraviti repliku baze podataka Master-Slave replikacija.

Za zauzete sisteme potrebna je replika kako bi u slučaju kvara baze podataka Gospodaru, bilo je moguće prebaciti opterećenje na rob i učinite ga novim Gospodaru.

Za jako opterećene sisteme, sigurnosne kopije MySQL-a treba da se urade posebno za rob Baza podataka.

Serveri baza podataka su jedan od ključnih u svakoj organizaciji. Oni su ti koji pohranjuju informacije i daju izlaz na zahtjev, a izuzetno je važno sačuvati bazu podataka u svakoj situaciji. Osnovna distribucija obično uključuje potrebne uslužne programe, ali administrator koji se ranije nije bavio bazom podataka morat će se neko vrijeme baviti posebnostima rada kako bi osigurao automatizaciju.

Vrste rezervnih kopija baze podataka

Za početak, hajde da shvatimo šta su sigurnosne kopije općenito. Server baze podataka nije obična desktop aplikacija, a kako bi se osigurala implementacija svih ACID svojstava (Atomic, Consistency, Isolated, Durable), koriste se brojne tehnologije, te stoga kreiranje i vraćanje baze podataka iz arhive ima svoje sopstvene karakteristike. Postoje tri različita pristupa sigurnosnoj kopiji podataka, svaki sa svojim prednostima i nedostacima.

Uz logičku, ili SQL, sigurnosnu kopiju (pg_dump, mysqldump, SQLCMD), kreira se trenutni snimak sadržaja baze podataka, uzimajući u obzir transakcioni integritet i pohranjuje se kao datoteka sa SQL naredbama (možete odabrati cijelu bazu podataka ili pojedinačne tabele), pomoću kojih možete ponovo kreirati bazu podataka na drugom serveru. Potrebno je vrijeme (posebno za velike baze podataka) za spremanje i vraćanje, tako da se vrlo često ova operacija ne može izvesti i izvodi se pri minimalnom opterećenju (na primjer, noću). Prilikom vraćanja, administrator će morati pokrenuti nekoliko naredbi kako bi pripremio sve što je potrebno (kreirajte praznu bazu podataka, Računi I tako dalje).

Fizička rezervna kopija (nivo sistema datoteka) - kopiranje datoteka koje DBMS koristi za skladištenje podataka u bazi podataka. Ali jednostavno kopiranje zanemaruje zaključavanja i transakcije, koje će vjerovatno biti pogrešno pohranjene i razbijene. Ako pokušate priložiti ovu datoteku, ona će biti u nedosljednom stanju i rezultirat će greškama. Da biste dobili ažuriranu sigurnosnu kopiju, baza podataka mora biti zaustavljena (možete smanjiti vrijeme zastoja koristeći rsync dvaput - prvo na pokrenutoj, a zatim na zaustavljenoj). Nedostatak ove metode je očigledan - ne možete vratiti određene podatke, već samo cijelu bazu podataka. Kada pokrenete bazu podataka vraćenu iz arhive sistema datoteka, morat ćete provjeriti integritet. Ovdje se koriste različite asistivne tehnologije. Na primjer, PostgreSQL ima WAL (Write Ahead Logs) i posebnu funkciju (Point in Time Recovery - PITR) koja vam omogućava da se vratite u određeno stanje baze podataka. Uz njihovu pomoć, treći scenario se lako implementira, kada se backup na nivou fajl sistema kombinuje sa bekapom WAL fajla. Prvo vraćamo rezervne kopije datoteka sistema datoteka, a zatim se pomoću WAL-a baza podataka ažurira. Ovo je malo komplikovaniji pristup za administraciju, ali nema problema sa integritetom baze podataka i vraćanjem baza podataka na određeno vreme.

Logička rezervna kopija se koristi u slučajevima kada je potrebno napraviti jednokratnu punu kopiju baze podataka ili u svakodnevnoj upotrebi nije potrebno mnogo vremena ili prostora za kreiranje kopije. Kada rasterećenje baza podataka traje dugo, obratite pažnju na fizičko arhiviranje.

Barman

Licenca: GNU GPL

Podržani DBMS: PostgreSQL

PostgreSQL podržava fizičke i logičke mogućnosti sigurnosnog kopiranja dodavanjem drugog sloja WAL-a (pogledajte bočnu traku) koji se može nazvati kontinuiranim sigurnosnim kopiranjem. Ali upravljajte sa redovni alati nekoliko servera nije baš zgodno čak ni za iskusnog administratora, a u slučaju kvara, račun ide na sekunde.

Barman (backup and recovery manager) je interni razvoj 2ndQuadrant, kompanije koja pruža usluge zasnovane na PostgreSQL-u. Dizajniran za fizičku PostgreSQL sigurnosnu kopiju (ne podržava logičko), WAL arhiviranje i brz oporavak nakon kvarova. Podržava daljinsko sigurnosno kopiranje i vraćanje više servera, oporavak u trenutku u trenutku (PITR), WAL upravljanje. SSH se koristi za kopiranje i izdavanje komandi udaljenom hostu, sinkronizacija i sigurnosna kopija pomoću rsync omogućava vam da smanjite promet. Barman se također integrira sa standardnim uslužnim programima bzip2, gzip, tar i slično. U principu, možete koristiti bilo koji program za kompresiju i arhiviranje, integracija neće oduzeti puno vremena. Implementirane različite servisne i dijagnostičke funkcije koje vam omogućavaju praćenje statusa usluga i podešavanje propusnosti. Pre/Post skripte su podržane.

Barman je napisan u Python-u, a politikama sigurnosnog kopiranja upravlja se korištenjem prijateljske INI datoteke barman.conf, koja se može nalaziti u /etc ili u korisničkom početnom direktoriju. Isporuka uključuje gotov šablon sa detaljnim komentarima unutra. Radi samo na *nix sistemima. Da biste instalirali na RHEL, CentOS i Scientific Linux, morate povezati EPEL - spremište koje sadrži dodatni paketi. Korisnici Debiana/Ubuntua imaju na raspolaganju službeno spremište:

$ sudo apt-get install barman

Ne uvijek u spremištu najnoviju verziju, da biste ga instalirali, moraćete da se pozovete na izvorne tekstove. Postoji nekoliko zavisnosti, a proces je lako shvatiti.

Sypex Dumper

Licenca: BSD

Podržani DBMS: MySQL

Uz MySQL se isporučuju i uslužni programi mysqldump, mysqlhotcopy koji vam omogućavaju da lako kreirate dump baze podataka, dobro su dokumentovani, a na Internetu možete pronaći veliki broj gotovih primjera i frontendova. Potonji omogućavaju početniku da brzo pristupi poslu. Sypex Dumper je PHP skripta koja vam omogućava da lako kreirate i vratite kopiju MySQL baze podataka. Dizajniran za rad s velikim bazama podataka, vrlo je brz, jasan i jednostavan za korištenje. Zna kako raditi sa MySQL objektima - pogledima, procedurama, funkcijama, okidačima i događajima.

Još jedan plus, za razliku od drugih alata koji se pretvaraju u UTF-8 prilikom izvoza, je to što Dumper izvozi u izvornom kodiranju. Dobivena datoteka zauzima manje prostora, a sam proces je brži. Jedan dump može sadržavati objekte sa različita kodiranja. Štaviše, lako je uvoziti/izvoziti u nekoliko faza, zaustavljajući proces tokom učitavanja. Prilikom ponovnog pokretanja, postupak će započeti od mjesta gdje je stao. Postoje četiri opcije za oporavak:

  • CREATE + INSERT - standardni način oporavka;
  • TRUNCATE + INSERT - manje vremena za kreiranje tabela;
  • ZAMJENA - vraćamo stare podatke u radnu bazu podataka bez prepisivanja novih;
  • INSERT IGNORE - dodajte izbrisane ili nove podatke u bazu podataka bez dodirivanja postojećih.

Podržava kompresiju kopiranja (gzip ili bzip2), automatsko brisanje starih rezervnih kopija, pregled sadržaja dump datoteke, vraćanje samo strukture tabela. Tu su i servisne funkcije za upravljanje bazom podataka (kreiranje, brisanje, provjera, vraćanje baze podataka, optimizacija, čišćenje tabela, rad sa indeksima itd.), kao i file manager koji vam omogućava kopiranje datoteka na server.

Upravljanje se vrši preko web pretraživača, AJAX sučelje je lokalizirano iz kutije i ostavlja utisak rada sa desktop aplikacijom. Također je moguće pokrenuti poslove sa konzole i po rasporedu (preko cron-a).

Da bi Dumper radio, trebaće vam klasični L|WAMP server, instalacija je zajednička za sve aplikacije napisane u PHP-u (kopirajte fajlove i postavite dozvole), i neće biti teško ni početniku. Projekat pruža detaljnu dokumentaciju i video tutorijale koji pokazuju kako se radi sa Sypex Dumper-om.

Postoje dva izdanja: Sypex Dumper (besplatno) i Pro (10 USD). Drugi ima više funkcija, sve razlike su navedene na web stranici.

SQL sigurnosna kopija i FTP

Licenca:

Podržani DBMS: GOSPOĐA SQL Server

MS SQL Server je jedno od popularnih rješenja i stoga je prilično uobičajeno. Posao sigurnosne kopije kreira se pomoću SQL Server Management Studio-a, samog Transact-SQL-a i cmdleta modula SQL PowerShell (Backup-SqlDatabase). Na web stranici MS-a možete pronaći samo ogromnu količinu dokumentacije koja vam omogućava da razumijete proces. Dokumentacija je, iako potpuna, vrlo konkretna, a informacije na internetu često su kontradiktorne. Početnik će zaista morati prvo vježbati, "puniti ruku", stoga, uprkos svemu što je rečeno, programeri trećih strana imaju prostora da se okrenu. Osim toga besplatna verzija SQL Server Express ne može se pohvaliti ugrađenim alatima za pravljenje rezervnih kopija. Za starije verzije MS SQL-a (prije 2008.) možete pronaći besplatne uslužne programe, kao što je sigurnosna kopija SQL Servera, ali u većini slučajeva takvi projekti su već komercijalizirani, iako često nude svu funkcionalnost za simboličan iznos.


Na primjer, razvoj SQL sigurnosne kopije i FTP-a i SQL vraćanja jednim klikom slijedi princip postavi i zaboravi. Sa vrlo jednostavnim i jasan interfejs, omogućavaju vam da kreirate kopije MS SQL Servera (uključujući Express) i Azure baza podataka, čuvate šifrirane i kompresovane datoteke na FTP i usluge u oblaku(Dropbox, Box, Google Drive, MS SkyDrive ili Amazon S3), rezultat se može vidjeti odmah. Moguće je pokrenuti proces i ručno i prema rasporedu, poslati poruku o rezultatu zadatka e-poštom, pokrenuti korisničke skripte.

Podržane su sve opcije sigurnosne kopije: puna, diferencijalna, evidencija transakcija, kopiranje fascikle sa datotekama i još mnogo toga. Stare sigurnosne kopije se automatski brišu. Za povezivanje sa virtuelnim hostom koristi se SQL Management Studio, iako to može biti nijansirano i neće raditi u svim takvim konfiguracijama. Za preuzimanje je ponuđeno pet verzija - od Besplatno fensi Prof Lifetime (samo $149 u vrijeme pisanja ovog teksta). Besplatna funkcionalnost je sasvim dovoljna za male mreže sa instaliranim jednim ili dva SQL servera, sve glavne funkcije su aktivne. Broj rezervnih baza podataka, mogućnost slanja datoteka na Google Drive i SkyDrive i šifriranje datoteka su ograničeni. Sučelje, iako nije lokalizirano, vrlo je jednostavno i razumljivo čak i za početnike. Potrebno je samo da se povežete sa SQL serverom, nakon čega će se prikazati lista baza podataka, označiti potrebne, konfigurisati pristup udaljenim resursima i odrediti vreme za završetak zadatka. I sve to u jednom prozoru.

Ali postoji jedno "ali". Sam program nije dizajniran za vraćanje arhiva. Za ovo, poseban besplatni uslužni program SQL vraćanje jednim klikom koji razumije format kreiran naredbom BACKUP DATABASE. Administrator treba samo da odredi arhivu i server na koji će vratiti podatke i pritisnuti jedno dugme. Ali u složenijim scenarijima, morat ćete koristiti RESTORE.


Karakteristike sigurnosne kopije MS SQL Servera

Kreiranje sigurnosne kopije i vraćanje DBMS-a ima svoje razlike koje treba uzeti u obzir, posebno pri prijenosu arhive na drugi server. Na primjer, analizirajmo neke od nijansi MS SQL Servera. Za arhiviranje koristeći Transact-SQL, koristite naredbu BACKUP DATABASE (postoji i naredba delta DIFFERENTIAL) i dnevnik transakcija BACKUP LOG.

Ako je rezervna kopija raspoređena na drugom serveru, morate biti sigurni da su isti logički diskovi prisutni. Alternativno, možete ručno postaviti ispravne staze za datoteke baze podataka koristeći opciju WITH MOVE naredbe RESTORE DATABASE.

Jednostavna situacija je backup i prijenos baza podataka na druge verzije SQL Servera. Ova operacija je podržana, ali u slučaju SQL Servera, radit će ako je verzija servera na kojem je kopija raspoređena ista ili novija od one na kojoj je kreirana. I postoji ograničenje: ne više od dvije novije verzije. Nakon restauracije, baza podataka će biti u načinu kompatibilnosti s verzijom iz koje je izvršen prijelaz, odnosno nove funkcije neće biti dostupne. Ovo je lako popraviti promjenom COMPATIBILITY_LEVEL. To možete učiniti koristeći GUI ili SQL.

ALTER DATABASE MyDB SET COMPATIBILITY_LEVEL = 110;

Možete odrediti na kojoj verziji je kopija kreirana gledajući zaglavlje arhivske datoteke. Da ne biste eksperimentirali, prilikom prelaska na nova verzija SQL Server bi trebao pokrenuti besplatni uslužni program Microsoft Upgrade Advisor.

Iperije

Licenca: reklama, postoji besplatna verzija

Podržani DBMS: Oracle 9-11, XE, MySQL, MariaDB, PostgreSQL i MS SQL Server

Kada morate upravljati nekoliko tipova DBMS-a, nezamjenjivi su kombajni. Izbor je veliki. Na primjer, Iperius je lagan, vrlo jednostavan za korištenje i istovremeno moćan program za backup datoteka, koji ima funkciju vruće sigurnosne kopije baza podataka bez prekida ili blokiranja. Pruža punu ili inkrementalnu sigurnosnu kopiju. Može kreirati pune slike diska za automatsku reinstalaciju cijelog sistema. Podržava backup na NAS, USB uređaje, streamer, FTP/FTPS, Google Drive, Dropbox i SkyDrive. Podržava zip kompresiju bez ograničenja veličine datoteke i AES256 enkripciju, pokretanje vanjskih skripti i programa. Uključuje vrlo funkcionalan planer zadataka, moguće je izvršiti nekoliko zadataka paralelno ili uzastopno, rezultat se šalje na e-mail. Podržani su brojni filteri, varijable za personalizaciju staza i postavki.


Mogućnost FTP upload-a olakšava ažuriranje informacija na više web stranica. Otvorite datoteke su sigurnosna kopija pomoću VSS tehnologije ( sjena kopija volumes), što vam omogućava da napravite vruću sigurnosnu kopiju ne samo DBMS datoteka, već i drugih aplikacija. Za Oracle se također koristi alat za pravljenje rezervnih kopija i oporavak RMAN (Recovery Manager). Kako ne bi došlo do preopterećenja kanala, moguće je podesiti propusni opseg. Upravljanje sigurnosnom kopijom i vraćanjem se vrši pomoću lokalne i web konzole. Sve funkcije su na vidiku, tako da vam je za postavljanje zadatka potrebno samo razumijevanje procesa, ne morate čak ni gledati u dokumentaciju. Samo slijedite upute čarobnjaka. Također možete primijetiti upravitelja računa, što je vrlo zgodno sa velikim brojem sistema.

Osnovne funkcije se nude besplatno, ali mogućnost redundantnosti baze podataka je uključena samo u Advanced DB i Full verzijama. Podržava instalaciju od XP do Windows Server 2012.

Handy Backup

Licenca: reklama

Podržani DBMS: Oracle, MySQL, IBM DB2 (7–9.5) i MS SQL Server

Jedan od najmoćnijih sistema upravljanja relacionim bazama podataka je IBM DB2, koji ima jedinstvene karakteristike skalabilnosti i podržava mnoge platforme. Isporučuje se u nekoliko izdanja, koja su izgrađena na istoj osnovi i funkcionalno se razlikuju. Arhitektura DB2 baze podataka vam omogućava upravljanje gotovo svim vrstama podataka: dokumentima, XML-om, medijskim datotekama itd. Besplatni DB2 Express-C je posebno popularan. Sigurnosna kopija je vrlo jednostavna:

db2 backup db uzorak

Ili snimak pomoću funkcije Advanced Copy Services (ACS):

db2 backup db uzorak korištenja snimka

Ali moramo zapamtiti da u slučaju snimaka ne možemo vratiti (db2 recover db) pojedinačne tablice. Postoje mogućnosti za automatsko pravljenje rezervnih kopija i još mnogo toga. Proizvodi su dobro dokumentovani, iako su priručnici rijetki na internetu na ruskom jeziku. Također, ne mogu sva posebna rješenja pronaći podršku za DB2.

Na primjer, Handy Backup vam omogućava da napravite sigurnosnu kopiju nekoliko tipova servera baza podataka i spremite datoteke na gotovo bilo koji medij ( HDD, CD/DVD, cloud i mrežna pohrana, FTP/S, WebDAV i drugi). Moguće je napraviti sigurnosnu kopiju baza podataka putem ODBC-a (samo tablice). To je jedno od rijetkih rješenja koje podržava DB2 i također nosi logo "Spreman za IBM DB2 Data Server Software". Cijeli postupak se izvodi pomoću konvencionalnog čarobnjaka, u kojem samo trebate odabrati željenu stavku i kreirati zadatak. Sam proces postavljanja je toliko jednostavan da ga čak i početnik može shvatiti. Možete kreirati više poslova koji će se izvoditi po rasporedu. Rezultat se evidentira i šalje e-poštom. Nije potrebno zaustaviti uslugu dok se posao izvodi. Arhiva se automatski komprimuje i šifruje, što garantuje njenu sigurnost.


Rad s DB2 podržavaju dvije verzije Handy Backup-a - Office Expert (lokalno) i Server Network (mreža). Radi na računarima koji koriste Win8/7/Vista/XP ili 2012/2008/2003. Sam proces implementacije nije težak ni za jednog administratora.

Zdravo! Postoje situacije kada se nakon instaliranja nove ekstenzije ili teme na web-mjestu online trgovine pojavljuju razne nepredviđene situacije. Leže u činjenici da se na sajtu mogu pojaviti greške koje ranije nisu postojale ili sajt uopšte ne reaguje. Da biste bili spremni za takve situacije, potrebno je da napravite rezervne kopije sajta ili rezervne kopije. U idealnom slučaju, trebalo bi ih kreirati ručno svaki put kada instalirate novi modul na web-mjestu ili izvršite operacije koje utječu na bazu podataka ili datoteke web-mjesta. Pravim sigurnosne kopije svake sedmice za svaki slučaj. Samo uvijek imam puno novosti u sedmici.

Ručno pravljenje rezervnih kopija datoteka web lokacije

Po pravilu, na dobar hosting, ima svoj vlastiti sistem backup podataka. Pravi sigurnosnu kopiju vaše stranice u određenom periodu, obično nekoliko dana. Jasno je da se ne treba u potpunosti oslanjati na hosting za backup. Kako onda napraviti rezervnu kopiju? Koristićemo .

Prvi korak je da napravite sigurnosnu kopiju vaših datoteka. Da biste to učinili, idite na odjeljak "WebFTP". Ovdje biramo lokaciju čije datoteke želimo da rezervišemo i idemo u njen folder. Zatim, radi bržeg preuzimanja, datoteke se prvo moraju arhivirati. Možete arhivirati datoteke sa ili bez kompresije. Preporučio bih vam da ne komprimirate datoteke, već ih dodajete u arhivu na uobičajeni način, kako ih ne biste oštetili u budućnosti. Odabiremo direktorije i datoteke koje su nam potrebne, na padajućoj listi na dnu odaberite akciju "Pakuj u arhivu". Postavili smo ime za njega, po mogućnosti navodeći datum i vrijeme kada je kopija kreirana. Kliknite na dugme "Izvrši".

Čekamo neko vrijeme da se arhiva napravi. Nakon toga, preuzmite ga na svoj računar. Rezervna kopija datoteka je spremna.

Ručni backup baze podataka

Sada pređimo na jednako važan korak - pravljenje sigurnosne kopije baze podataka. Ako hosting ne pruža mogućnost da se to uradi automatski, onda u takvim slučajevima, da biste sačuvali kopije na vašem računaru, morate izvesti bazu podataka. To se radi na sljedeći način. Idite na odjeljak "Baze podataka" i kliknite na vezu "PHPMyAdmin" pored željene baze podataka.

AT otvori karticu unesite svoje korisničko ime i lozinku i ulazimo u kontrolni panel MySQL baze podataka. Kliknemo na naziv baze podataka (1) koju želimo da rezervišemo i idemo na karticu "Izvoz" (2).

Odaberite metodu s minimalnim postavkama i kliknite na "Naprijed". Nakon toga će početi preuzimanje sql-fajla sa kopijom baze podataka.

Vraćanje baze podataka iz sigurnosne kopije

Da biste vratili bazu podataka iz ove datoteke, također ćete morati ući u kontrolni panel MySQL baze podataka, izbrisati sve postojeće tabele u bazi podataka, a zatim otići na karticu "Uvoz". Tamo odaberite prethodno kreiranu datoteku i kliknite na dugme "Idemo". Sistem će ga preuzeti i prijaviti završetak operacije. Baza podataka će imati sve tabele koje je sadržavala u vrijeme izrade sigurnosne kopije.

Vraćanje datoteka iz sigurnosne kopije

Uz oporavak datoteka, sve je malo lakše. Idemo u odjeljak "WebFTP", zatim u mapu vaše web stranice, izbrišemo sve datoteke unutar mape vaše web stranice i kliknite na "Učitaj datoteku". Odaberite prethodno kreiranu arhivu i kliknite na "Učitaj datoteku". Čekamo da se preuzimanje završi.

Nakon što se arhiva učita i prikaže na panelu datoteka, potrebno je da je raspakujete. I sve je spremno. Ili, bez brisanja datoteka, možete jednostavno preuzeti arhivu i raspakirati je zamjenom. Ako je raspakivanje bilo uspješno, to znači da su svi fajlovi zamijenjeni iz sigurnosne kopije. Ali obično prvo izbrišem datoteke, a zatim raspakujem sigurnosnu kopiju.

Fajlovi se također mogu preuzeti pomoću FTP klijenta kao što je FileZilla. Pisao sam o tome kako raditi s njim. Povezujemo se sa našim ftp nalogom preko klijenta, idemo u folder sa fajlovima sajta i jednostavno ih kopiramo na naš računar. Slično, mogu se učitati sa računara na hosting. Samo ne zaboravite kopirati i zamijeniti.

Ne zaboravite na sigurnost vaše stranice, sigurnosne kopije shvatite ozbiljno jer nikad ne znate kada bi vam mogle dobro doći.

S poštovanjem, Schmidt Nikolai

Organizujemo automatske sigurnosne kopije MySQL baze podataka.

Svaka baza podataka mora biti sigurnosna kopija ili sigurnosna kopija. Ako to još uvijek radite ručno, možete se radovati jer postoji jednostavno PHP rješenje za automatsko pravljenje rezervnih kopija. Pomoću ove skripte možete prenijeti određene tablice za sigurnosno kopiranje ili sigurnosno kopirati cijelu bazu podataka.

Kako implementirati mysql sigurnosne kopije?

Najbolje je kopirati dostavljeni kod skripte i smjestiti ga u mapu "database_backups" kao što je prikazano na slici ispod. Zatim prilikom pozivanja datoteke backup.php, napravit će sigurnosnu kopiju baze podataka na vašem serveru. Preporučio bih da povremeno kopirate sve sigurnosne kopije na vaš računar ili drugu pohranu kako biste bili sigurni u slučaju gubitka hostinga.

Automatizacija mysql sigurnosnih kopija sa CRON-om

CRON je dokazani planer poslova koji vam omogućava da pokrenete skripte određeno vrijeme. Na primjer, možete napraviti sigurnosne kopije baze podataka noću kada promet opadne. Možete jednostavno postaviti CRON ako ga vaš host podržava. Da biste to učinili, trebate pokrenuti sljedeću naredbu u kojoj samo trebate promijeniti vezu do vaše sigurnosne kopije.

Wget -O /dev/null http://your-site.com/database_backup/backup.php

PHP kod fajl

Pogledali smo jednostavan primjer implementacije automatske sigurnosne kopije mysql baze podataka. Da, metoda je hrastova, ali je prihvatljiva za male lokacije. Ako imate veliki projekat, korišćenje php-a je veoma sporo u poređenju sa korišćenjem mysqldump. Lijepa molba za one koji znaju bolje organizirati backup, pišite u komentarima.

1. februar 2012. u 00:33

Sigurnosna kopija podataka u MySQL

  • MySQL

Sigurnosna kopija baze podataka je takva stvar koju uvijek morate podesiti za već pokrenute projekte direktno na "živim" proizvodnim serverima.
Ova situacija se lako objašnjava. Na samom početku, svaki projekat je još prazan i jednostavno se nema šta kopirati. U fazi naglog razvoja, čelnici nekolicine programera isključivo su zauzeti zajebavanjem čipova i navlaka, kao i ispravljanjem kritičnih grešaka sa rokom do „prekjučer“. I tek kada projekat "uzleti" dolazi spoznaja da je glavna vrijednost sistema nagomilana baza podataka, a njen neuspjeh će biti katastrofa.
Ovaj pregledni članak je za one čiji su projekti već dosegli ovu tačku, ali pečeni pijetao još nije kljucao.

1. Kopiranje datoteka baze podataka

MySQL baza podataka se može kopirati privremenim isključivanjem MySQL servera i jednostavnim kopiranjem fajlova iz fascikle /var/lib/mysql/db/. Ako server nije isključen, iz očiglednih razloga, vjerovatno je gubitak i oštećenje podataka. Za velike učitane baze podataka, ova vjerovatnoća je blizu 100%. Osim toga, kada prvi put počnete sa "prljavom" kopijom baze podataka, MySQL server će započeti proces provjere cijele baze podataka, što može potrajati satima.

U većini "živih" projekata redovno gašenje server baze podataka dugo vremena je neprihvatljiv. Za rješavanje ovog problema koristi se trik zasnovan na snimcima sistema datoteka. Snimka je nešto poput "fotografije" sistema datoteka u određenom trenutku, snimljena bez stvarnog kopiranja podataka (i stoga brzo). Lijeno kopiranje objekata radi na sličan način u mnogim modernim programskim jezicima.
Opća šema radnji je sljedeća: sve tabele su zaključane, keš datoteka baze podataka je resetovan, napravljen je snimak sistema datoteka, tabele su otključane. Nakon toga, datoteke se tiho kopiraju sa snimka, nakon čega se uništava. Dio „blokiranja“ takvog procesa traje od nekoliko sekundi, što je već podnošljivo. Kao osveta za neko vrijeme, dok je snimak "živ", performanse operacija datoteka se smanjuju, što prvenstveno utiče na brzinu upisivanja u bazu podataka.

Neki sistemi datoteka, kao što je ZFS, izvorno podržavaju snimke. Ako ne koristite ZFS, ali imate LVM upravljač volumena na svom serveru, također možete kopirati MySQL bazu podataka putem snimka. Konačno, pod *nix, možete koristiti drajver R1Soft Hot Copy snapshot, ali ovaj metod neće raditi u openvz () kontejneru.

Za MyISAM baze podataka postoji službeni besplatni uslužni program mysqlhotcopy koji "ispravno" kopira datoteke MyISAM baze podataka bez zaustavljanja servera. Postoji sličan uslužni program za InnoDB, ali se plaća, iako ima više funkcija.

Kopiranje fajlova - najviše brz način prenijeti cijelu bazu podataka sa jednog servera na drugi.

2. Kopirajte putem tekstualnih datoteka

Da biste pročitali podatke iz proizvodne baze podataka u rezervnu kopiju, nije potrebno povlačiti datoteke. Možete odabrati podatke upitom i spremiti ih u tekstualnu datoteku. Da biste to učinili, koristite SQL naredbu SELECT INTO OUTFILE i njen par LOAD DATA INFILE . Istovar se vrši red po red (možete odabrati samo potrebne redove za spremanje, kao u normalnom SELECT). Struktura tabela nije nigdje specificirana - programer bi trebao voditi računa o tome. Također mora voditi računa o uključivanju izraza SELECT INTO OUTFILE u transakciju ako je potrebno da se osigura integritet podataka. U praksi, SELECT INTO OUTFILE se koristi za djelomične sigurnosne kopije vrlo veliki stolovi koji se ne može kopirati ni na koji drugi način.

U većini slučajeva, uslužni program mysqldump koji je kreirao Igor Romanenko mnogo je praktičniji. Uslužni program mysqldump generira datoteku koja sadrži sve SQL naredbe potrebne za potpuno obnavljanje baze podataka na drugom poslužitelju. Sa zasebnim opcijama, možete postići kompatibilnost ove datoteke sa gotovo svim DBMS-ima (ne samo MySQL), osim toga, moguće je učitavanje podataka u CSV i XML formatima. Za vraćanje podataka iz takvih formata postoji uslužni program mysqlimport.

mysqldump konzolni uslužni program. Postoje njegovi dodaci i analozi koji vam omogućavaju upravljanje sigurnosnom kopijom putem web sučelja, na primjer, ukrajinski alat Sypex Dumper (njihov predstavnik je na Habréu).

Nedostaci univerzalnih sigurnosnih uslužnih programa u tekstualne datoteke- ovo je relativno mala brzina i nedostatak mogućnosti pravljenja inkrementalnih sigurnosnih kopija.

3. Inkrementalne sigurnosne kopije

Tradicionalno se preporučuje čuvanje 10 rezervnih kopija: po jednu za svaki dan u sedmici, kao i dvonedjeljne, mjesečne i kvartalne sigurnosne kopije - to će vam omogućiti da se vratite prilično duboko u slučaju oštećenja bilo kakvih podataka.
Sigurnosne kopije svakako ne bi trebale biti pohranjene na istom disku kao živa baza podataka, a ne na istom serveru. U slučaju požara i drugih nepogoda, najbolje je iznajmiti nekoliko jedinica u obližnjem data centru.

Ovi zahtjevi mogu postati problem za velike baze podataka. Pumpanje sigurnosne kopije baze podataka od 100 gigabajta preko mreže od 100 Mbita će trajati oko tri sata, za koje će se kanal potpuno popuniti.
Inkrementalno pravljenje rezervnih kopija može djelomično riješiti ovaj problem, kada se potpuni backup radi, recimo, samo nedjeljom, a ostalim danima se upisuju samo podaci dodati ili promijenjeni u proteklom danu. Poteškoća je u tome kako prepoznati baš te „podatke koji su se promijenili u jednom danu“.

Ovdje je Percona XtraBackup sistem, koji sadrži modificirani InnoDB motor, analizira MySQL binarne dnevnike i izvlači potrebne informacije iz njih, praktično bez premca. Gore spomenuti plaćeni InnoDB Hot Backup ima gotovo iste mogućnosti.

Uobičajeni problem sa bilo kojim rezervnim kopijama je taj što uvijek zaostaju. U slučaju kobnog kvara glavnog servera, sistem će biti moguće vratiti samo uz malo „povratka“ na vrijeme, što će vrlo, jako razočarati njegove korisnike. Ako su finansijski tokovi na bilo koji način pogođeni u sistemu, takav „povratak“ može bukvalno koštati prilično peni.

4. Replikacija

MySQL sistem replikacije je dizajniran da izbjegne vraćanje. Ideja replikacije zasnovana je na činjenici da pored „glavnog“ servera („Master“), konstantno rade slave MySQL serveri („slave“), koji primaju inkrementalne rezervne kopije od glavnog servera u realnom vremenu. Time se vrijeme vraćanja svodi gotovo na kašnjenje mreže. U slučaju pada Master-a, jedan od slave-ova može se brzo imenovati kao “novi Master” i klijenti se mogu preusmjeriti na njega. Osim toga, slave mogu obraditi zahtjeve za čitanje podataka (SELECTs); ovo se može koristiti za izvođenje nekih proračuna ili smanjenje opterećenja čarobnjaka. MySQL podržava replikaciju iz kutije, proces je dobro opisao korisnik

Učitavanje...
Top