Mam taki problem. Posiadam skrypt dodany do crona co mi co jakiś czas robi automatyczny zrzut bazy danych do pliku .db i to działa znakomicie. Potem kolejny skrypt ma za zadanie ten plik spakować do .zip i tu pojawia się problem, gdyż pakowany jest pusty plik (paczka nie zawiera pliku z bazą danych). Ten sam skrypt wykorzystuję na innych serwerach i problemu nie ma, w necie doczytałem że problemem może być moduł php odpowiedzialny za pakowanie plików z poziomu php. Możecie to jakoś sprawdzić albo ewentualnie dać jakieś sugestie odnośnie tego? Skrypt do kompresji <?php $zip = new ZipArchive(); $plik_arch = "/zrzuty_baza/nazwa_bazy.zip"; $zip->open($plik_arch, ZIPARCHIVE::CREATE); $zip->addFile("/zrzuty_baza/nazwa_bazy.sql"); echo "Ilość plików spakowanych: ".(($zip->numFiles)) . "\n"; $zip->close(); ?> Skrypt jest wywoływany z katalogu głównego na jaki wskazuje domena, natomiast baza znajduje się w zrzuty_baza, więc odnośnik do katalogu musi być.
Offtopic: ale wiesz o tym, że Home.pl robi dzienny backup bazy? Odpal skrypt z przekierowaniem błędów do pliku. Na nowych serwerach home czasem dziwnie działają ścieżki. Zwłaszcza jak odpalasz to z crone. Ja bym włączyć wyświetlanie błędów, ręcznie uruchomił skrypt (CLI lub HTTP) i zobaczył co "powie". Dostosował ścieżki tak by dzialało i plik nie był pusty.
ok dzięki za sugestie, co do zrzutów bazy przez home to w firmie mamy taką politykę aby samemu robić backupy, gdyby np. się okazało że ta homowska okazała by się uszkodzona albo też z jakiegoś powodu nie została zrobiona :]
Pakowanie za pomocą wbudowanej biblioteki do phpa jest dość problematyczne do wdrożenia. Możesz spróbować skożysztać z aplikacji zip lub tar, które odpalasz za pomocą funkcji ```system```: https://pomoc.home.pl/baza-wiedzy/pakowanie-i-rozpakowywanie-danych-na-serwerze-w-home-pl