Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Automatyczne wykonywanie kopii
Forum PHP.pl > Forum > PHP
Jarod
Chciałbym napisać skrypt, który będzie dodany do CRONA. Będzie on wykonywany raz dziennie. Chciałbym, aby zrzucał bazę do pliku za pomocą mysqldump, ten plik z bazą żeby przyjmował nazwę data_czas. Jednocześnie aby kopie sprzed 10 dni były kasowane. Jak to ugryźć?
SongoQ
Pytasz o algorytm czy w czym zrobic php czy bash. Bo nie wiele sie z tego dowiedzialem. Takie cos to zaledwie kilka linii.
Jarod
Cytat(SongoQ @ 11.06.2006, 18:48 ) *
Pytasz o algorytm czy w czym zrobic php czy bash. Bo nie wiele sie z tego dowiedzialem. Takie cos to zaledwie kilka linii.


O algorytm w php
em1X
  1. Wykonujesz mysqldump - zwracany jest plik.
  2. Zmieniasz nazwe tego pliku na
    1. <?php
    2. date('d-m-Y H:i:s');
    3. ?>
  3. Jedziesz w pętli po wszystkich plikach w katalogu i za pomoca funkcji strtotime" title="Zobacz w manualu php" target="_manual sprawdzasz czy
    Kod
    czasAktualny - strtotime >= 10*3600*24 (10 dni)
    . Jezeli jest to usuwasz ten plik
  4. koniec
Jarod
Żeby nie zakładać nowego wątku. Z jakimi parametrami najlepiej wykonywać polecenie mysqldump? Chodzi mi o jedną wybraną bazę. Bo widzę, że tych opcji jest w cholere i troche..
em1X
no stary opcji uzywasz takich jakie cie interesują, my mamy wiedziec jak dokładnie powinna twoja kopia wyglądać ? rolleyes.gif

moze tak:
Kod
mysqldump -f -u user -p hasło -h adres_hosta.com.pl -r nazwa_pliku_kopii NAZWA_BAZY


(możesz dodać -C (wielkie C!!!) - włączysz kompresję)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.