Linux strežnik: Primer nastavitve varnostnega kopiranja datotek in MySQL baz na FTP strežnik

Podatki, ki jih potrebujete

  • root geslo za MySQL
    spodaj zamenjajte MYSQL_ROOT_GESLO
  • seznam map za katere želite, da se izdelujejo varnostne kopije
    spodaj popravite seznam map pod INCLUDE_LIST
  • uporabniško ime in geslo ter ime FTP strežnika, kamor se bodo shranjevale varnostne kopje
    spodaj zamenjajte FTP_UPORABNIŠKO_IME, FTP_GESLO in FTP_STREŽNIK
  • geslo za varnostne kopije
    spodaj zamenjajte ZGENERIRANO_GESLO

Lokalno varnostno kopiranje MySQL – primer uporabe AutoMySQLBackup

1. Ustvarite mapo za AutoMySQLBackup

mkdir -p /root/scripts/automysqlbackup

2. Ustvarite mapo, kamor se bodo shranjevale varnostne kopije

mkdir /var/lib/mysqlbackup
chmod 700 /var/lib/mysqlbackup

3. S spletne strani prenesite program AutoMySQLBackup ter ga razpakirajte

cd /root/scripts/automysqlbackup
tar zxvf automysqlbackup-*.tar.gz

4. Uredite nastavitve v datoteki /root/scripts/automysqlbackup/automysqlbackup.conf

vpišite geslo za root uporabnika za MySQL

CONFIG_mysql_dump_password='MYSQL_ROOT_GESLO'

ter določite v katero mapo se shranjujejo varnostne kopije

CONFIG_backup_dir='/var/lib/mysqlbackup'

5. Preverite delovanje

/root/scripts/automysqlbackup/automysqlbackup /root/scripts/automysqlbackup/automysqlbackup.conf

Oddaljeno varnostno kopiranje na FTP – primer uporabe duplicity-manager

Za namestitev programa duplicity-manager morate najprej namestiti programa Git in Duplicity. Primer namestitve na Centos 6.5. x64:

yum install git
wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
yum install duplicity

1. Namestite duplicity-manager

cd /root/scripts/
git clone https://github.com/stephenlang/duplicity-manager

2. Zgenerirajte naključno geslo

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c64

POMEMBNO: Geslo shranite na varno mesto (ločeno od strežnika), saj brez tega gesla ne boste mogli obnoviti vaših varnostnih kopij.


3. Uredite nastavitve v datoteki
/root/scripts/duplicity-manager/duplicity-manager.sh

geslo zgenerirano v prejšnjem koraku vpišite pod

export PASSPHRASE=ZGENERIRANO_GESLO

ločeno s presledkom vpišite mape, za katere mape želite, da se izdelujejo varnostne kopije (ne pozabite na mapo, kjer so varnostne kopije MySQL)

INCLUDE_LIST=( /etc /var/www /var/lib/mysqlbackup )

in kam se varnostne kopije shranjujejo (vpišite uporabiške podatke za dostop do FTP strežnika za varnostne kopije)

backupdestination=ftp://FTP_UPORABNIŠKO_IME:FTP_GESLO@FTP_STREŽNIK

4. Preverite delovanje

/root/scripts/duplicity-manager/duplicity-manager.sh --backup

Periodično varnostno kopiranje

Določite, kdaj AutoMySQLBackup in duplicity-manager izvedeta varnostno kopiranje

1. Odprite urejevalnik periodičnih opravil

crontab -e

2. Dodajte vrstici za izdelovanje varnostnih kopij, npr. ob 2:00 in 3:00 ponoči

0 2 * * * /root/scripts/automysqlbackup/automysqlbackup /root/scripts/automysqlbackup/automysqlbackup.conf
0 3 * * * /root/scripts/duplicity-manager/duplicity-manager.sh --backup

Obnovitev iz varnostne kopije

Obnovitev MySQL baze

gunzip < ${DATOTEKA_Z_VARNOSTNO_KOPIJO_BAZE} | mysql -uroot -p'${MYSQL_ROOT_GESLO}' ${IME_BAZE}
  • ${DATOTEKA_Z_VARNOSTNO_KOPIJO_BAZE} zamenjajte s polno potjo do varnostne kopije posamezne baze.
  • ${MYSQL_ROOT_GESLO} zamenjajte z root geslom.
  • ${IME_BAZE} zamenjajte z imenom baze, ki jo obnavljate.

POZOR: Podatki, ki so v varnostni kopiji, bodo prepisali vse obstoječe podatke v bazah.

Obnovitev datotek

/root/scripts/duplicity-manager.sh --restore-single ${STAROST_BACKUPA_V_DNEH}D ${MAPA_KI_JO_ZELITE_OBNOVITI}
  • ${STAROST_BACKUPA_V_DNEH} zamenjajte s starostjo varnostne kopije (v dneh) iz katere želite obnoviti datoteke. Če želite datoteke obnoviti iz zadnje varnostne kopije, vpišite število 0.
  • ${MAPA_KI_JO_ZELITE_OBNOVITI} zamenjajte z imenom mape, ki jo obnavljate. Npr.: var/www

Datoteke pridobljene iz varnostne kopije se shranijo v mapo /tmp. Če jih želite obnoviti na izvirno mesto, jih morate tja ročno skopirati.

Vam je članek pomagal?
Dislike 0
Ogledov: 263
Niste našli, kar ste iskali? Preiščite bazo znanja