Witam.
Ostatnio zastanawiam się nad procedurą przyrostowej kopii zapasowej postgresta, do tej pory robię to za pomocą skryptu, ale baza robi się coraz większa i większa, przydałoby się jakoś to podzielić. Znacie jakiś sposób żeby za pomocą skryptu robić przyrostowe kopie zapasowe i raz w tygodniu całościowe?
[+] Przyrostowa kopia zapasowa bazy SQL
Nie jestem na 100% pewien, ale zdaje się, że ta (i mnóstwo innych) funkcjonalność dostępna jest przez slony. Ja w każdym bądź razie tam bym szukał. Choć może być i tak, że to jest strzelanie z armaty do muchy, a sam postgres ma coś wbudowane?
Nie wiem jak jest w przypadku PostgreSQL ale tam tez na pewno baza jest w postaci jednego pliku więc dodanie jednego wiersza zmienia cały plik, a kopie przyrostowe działają na zasadzie, że sprawdzają, który plik był zmieniany ostatnio - tu zawsze będzie jeden.
Może rozwiązaniem będzie skrypt z użyciem SQL; wybierasz o 23:58 wpisy, które zostały dodane tego dnia i kopiujesz je do nowej tabelki w nazwie z datą i znajdującej się w bazie danych backup - a potem taką bazę zrzucasz.
Na prawdę ta baza jest taka duża, że chcesz przyrostowe kopie robić?
Może rozwiązaniem będzie skrypt z użyciem SQL; wybierasz o 23:58 wpisy, które zostały dodane tego dnia i kopiujesz je do nowej tabelki w nazwie z datą i znajdującej się w bazie danych backup - a potem taką bazę zrzucasz.
Na prawdę ta baza jest taka duża, że chcesz przyrostowe kopie robić?
Aż sprawdziłem z ciekawości ]krogulec:/var/lib/postgresql/8.4/main/base# find ./ -type f | wc -lgrzesiek pisze:ale tam tez na pewno baza jest w postaci jednego pliku
2801[/code]
PostgreSQL posiada wbudowany mechanizm tworzenia kopii przyrostowych - zwie się to Point in Time Recovery. Możesz o tym poczytać w oficjalnej dokumentacji lub np. tu.