Poniższy skrypt pozwala na wykonanie kopii zapasowej wybranej bazy danych:

#!/bin/bash
db_user="Uzytkownik"
db_pass="Haslo"
db_host="Adres.IP.lub.Nazwa.Hosta"
db_name="Baza-Danych"
backup_path="/katalog/kopii/zapasowej"
date=$(date +"%Y%m%d-%H%M%S")
umask 177
mysqldump --user=$db_user --password=$db_pass --host=$db_host $db_name > $backup_path/$db_name-$date.sql
find $backup_path/* -mtime +30 -exec rm {} \;

Dodając odpowiednie zadanie do cron’a, skrypt automatycznie wykona kopię zapasową bazy danych, oraz usunie pliki starsze niż 30 dni.

Facebook Comments

2 Komentarze

  1. a jak będzie z polskim kodowaniem w tym przypadku? :) chodzi o późniejszy import bazy np. na innym serwerze

    1. Po prostu przy eksporcie oraz przy imporcie bazy danych należy ustawić odpowiednie kodowanie znaków, przykładowo:

      mysqldump –user=$db_user –password=$db_pass –host=$db_host $db_name -default-character-set=utf8 > $backup_path/$db_name-$date.sql

Zostaw komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

ZOBACZ RÓWNIEŻ

PRZYJAZNE NAZWY FRIENDLY NAMES

Rekursywna zmiana nazwy plików na przyjazne nazwy (friendly