Backup MySQL baze podataka Print E-mail
( 1 - user rating )
Written by ubuntuuser   
U ovom tutorijalu za backup MySQL baze koristit ćemo AutoMySQLBackup1 skriptu. To je shell skripta pomoću koje možete vršiti dnevni, sedmični ili mjesečni backup jedne ili više MySQL baza podataka. AutoMySQLBackup koristi mysqldump za kreiranje sql fajla vaših baza podataka. mydqldump će zaključati bazu (ili baze) podataka sve dok backup ne bude obavljen, ovo može potrajati od nekoliko sekundi do par minuta, zavisno od veličine baze. Tako da ako želite raditi backup nekog dosta prometnog web sajta, odnosno sajta sa velikom bazom podataka, onda AutoMySQLBackup skripta nije za vas.
Downloadujte AutoMySQL Backup skriptu:
wget http://mesh.dl.sourceforge.net/sourceforge/automysqlbackup/automysqlbackup.sh.2.5
zatim je otvorite radi konfiguracije:
gedit automysqlbackup.sh.2.5
mijenjate samo ovaj dio skripte:
# Username to access the MySQL server e.g. dbuser

USERNAME=dbuser

# Username to access the MySQL server e.g. password

PASSWORD=password

# Host name (or IP address) of MySQL server e.g localhost

DBHOST=localhost

# List of DBNAMES for Daily/Weekly Backup e.g. "DB1 DB2 DB3"

DBNAMES="DB1 DB2 DB3"

# Backup directory location e.g /backups

BACKUPDIR="/backups"

# Mail setup

# What would you like to be mailed to you?

# - log   : send only log file

# - files : send log file and sql files as attachments (see docs)

# - stdout : will simply output the log to the screen if run manually.

# - quiet : Only send logs if an error occurs to the MAILADDR.

MAILCONTENT="stdout"

# Set the maximum allowed email size in k. (4000 = approx 5MB email [see docs])

MAXATTSIZE="4000"

# Email Address to send mail to? (user @ domain.com)

MAILADDR="user @ domain.com"
unesite ispravne podatke (username, password, ukoliko vršite backup na lokalnom računaru ostavite host nepromijenjen, zatim unesite imena baza koje želite backup-ovati) zatvorite i snimite fajl.

NAPOMENA: DBNAMES može sadržavati imena više baza, odvojite ih praznim prostorom. Ukoliko BACKUPDIR ne postoji AutoMySQLBackup skripta će ga automatski kreirati. Nakon što ste unijeli (ispravne) podatke napravite vašu skriptu izvršnom (eng. executable):
chmod 755 automysqlbackup.sh.2.5
sada pokrenite skriptu:
./automysqlbackup.sh.2.5
Nakon backup-a, imat ćete izlaz sličan ovom:
======================================================================

AutoMySQLBackup VER 2.5

http://sourceforge.net/projects/automysqlbackup/

Backup of Database Server - BHbuntu
======================================================================

Backup Start Time Tue Nov 11 21:06:14 CET 2008

======================================================================

Daily Backup of Database ( ubuntu )

Rotating last weeks Backup...

Backup Information for /backups/daily/ubuntu/ubuntu_2008-11-11_21h06m.Tuesday.sql

compressed        uncompressed  ratio uncompressed_name

53141   290834  81.7% /backups/daily/ubuntu/ubuntu_2008-11-11_21h06m.Tuesday.sql

----------------------------------------------------------------------

Backup End Tue Nov 11 21:06:15 CET 2008

======================================================================

Total disk space used for backup storage..

Size - Location

84K /backups

======================================================================

If you find AutoMySQLBackup valuable please make a donation at

http://sourceforge.net/project/project_donations.php?group_id=101066

======================================================================
Primjetit ćete da u backup direktoriju imate tri foldera: daily, monthly, weekly. Ako ste slijedili gore navedene upute vaš backup bi se trebao nalaziti unutar foldera daily.
Restore baze radite na sljedeći način, prvo dekompresujte arhivu u kojoj je smješten sql fajl:
cd /backups/daily/ubuntu
gunzip ubuntu_2008-11-11_21h06m.Tuesday.sql.gz
zatim unesite sljedeće:
mysql -h localhost -u [vaš username] -p[vaš password] [ime baze] < [baza.sql]
naravno, unosite vaše podatke u polje za username i password bez znaka zagrada [ ], ali obratite pažnju na to da između passworda i -p ne smije biti praznog mjesta. Na primjer, s ovim podacima: username=korisnik, password=sifra, baza=ubuntu.sql, host=localhost; restore baze bi izgledao ovako:
mysql -h localhost -u korisnik -psifra ubuntu < ubuntu.sql


 

Show Other Articles Of This Author

Add comment


Security code
Refresh