W tej chwili używamy Visual SVN i tworzymy kopię zapasową całego katalogu repozytoriów dla visual svn. To tworzy kopię zapasową wszystkich danych dla każdego repozytorium w naszym silniku svn. Jestem ciekawy, czy będę w stanie przywrócić te pliki w przypadku awarii lub katastrofy? Czy ktoś z was ma doświadczenie w tej procedurze przywracania? Dzięki.
15
Odpowiedzi:
Zobacz: http://www.visualsvn.com/support/topic/00012/
Wskazuje to na następującą dokumentację:
http://www.visualsvn.com/support/svnbook/reposadmin/maint/#svn.reposadmin.maint.backup
Opisuje użycie poleceń Subversion do wykonania kopii zapasowej. Mam nadzieję, że już to robisz, ponieważ wykonanie prostej kopii zapasowej katalogu może spowodować, że repozytorium nie będzie przydatne.
Powinieneś być w stanie użyć kopii zapasowej z Subversion i użyć
svnadmin dump
lubsvnadmin hotcopy
polecenia, aby przywrócić pełne repozytorium. Jednak, podobnie jak w przypadku każdej strategii tworzenia kopii zapasowych, musisz samodzielnie przetestować przywracanie, aby upewnić się, że zadziała.źródło
Począwszy od wersji VisualSVN Server 3.6, serwer zawiera wbudowaną funkcję zaplanowanego tworzenia kopii zapasowych i przywracania repozytorium . Ponadto wersja 3.6 dodaje zaplanowaną weryfikację repozytoriów SVN.
Konfigurowanie zaplanowanej kopii zapasowej repozytorium i weryfikacji dla repozytoriów Subversion to tylko kwestia minut. Aby uzyskać instrukcje krok po kroku, zobacz artykuł KB106: Rozpoczęcie pracy z kopiami zapasowymi i przywracaniem .
Jeśli szukasz jednorazowej kopii zapasowej, możesz użyć polecenia cmdlet PowerShell Backup-SvnRepository . Aby odzyskać repozytorium, użyj Restore-SvnRepository . Te cmdlety kopii zapasowych są dostępne od wersji 3.6.
Pobierz najnowszą wersję serwera VisualSVN z głównej strony pobierania .
Istnieje kilka metod tworzenia kopii zapasowych repozytoriów serwera VisualSVN. Sprawdź krótki opis poniżej.
1.
svnadmin hotcopy
narzędziesvnadmin hotcopy
umożliwia wykonanie bezpiecznej kopii repozytorium, niezależnie od tego, czy inne procesy korzystają z repozytorium. Możesz napisać własny skrypt, który będzie regularnie tworzył kopię zapasową twoich repozytoriów.Możesz przeczytać następujący artykuł z książki SVN, aby dowiedzieć się więcej o tworzeniu kopii zapasowych repozytoriów Subversion: http://www.visualsvn.com/support/svnbook/reposadmin/maint/#svn.reposadmin.maint.backup
2.
svnsync
narzędzieJest to metoda przyrostowej kopii zapasowej. Metoda przyrostowej kopii zapasowej wykonuje kopię zapasową tylko części danych repozytorium, która zmieniła się od czasu poprzedniej kopii zapasowej. Możesz skonfigurować to narzędzie do pracy jako „master” i „slave” i automatycznie duplikować wszelkie zatwierdzenia do jego repozytoriów.
Więcej informacji można znaleźć w artykule „svnsync”: http://www.visualsvn.com/support/svnbook/ref/svnsync/
3. Kopia zapasowa systemu Windows Server. Możesz użyć Kopii zapasowej systemu Windows Server do tworzenia kopii zapasowych repozytoriów Subversion. Umożliwia tworzenie kopii zapasowych w udziale sieciowym, dedykowanym woluminie kopii zapasowej, nośniku do zapisu. Na przykład
wbadmin
narzędzie wiersza polecenia umożliwia bezpieczne tworzenie kopii zapasowych repozytoriów. To proste polecenie wykonuje jednorazową kopię zapasowąC:\foo\bar
naX:\
wolumin:(Aby zainstalować kopię zapasową systemu Windows Server, uruchom
ocsetup WindowsServerBackup
w wierszu polecenia z podwyższonym poziomem uprawnień).Kopię zapasową można skonfigurować na różne sposoby:
wbadmin
narzędzie wiersza poleceń ,Po uruchomieniu kopii zapasowej nie jest wymagane zatrzymanie usługi serwera, ponieważ backend repozytorium FSFS jest zawsze w spójnym stanie .
Oto ogólne wskazówki dotyczące odzyskiwania kopii zapasowych systemu Windows Server:
Odzyskaj kopie zapasowe do pustego katalogu, aby mieć pewność, że przywrócone pliki repozytorium nie zmieszają się z plikami uszkodzonego. Po odzyskaniu repozytorium można usunąć uszkodzone repozytorium, a następnie zastąpić je odzyskanym.
Serwer cyklu zatrzymania i uruchomienia po odzyskaniu repozytorium z kopii zapasowej.
Jeśli klienci otrzymają błędy po odzyskaniu repozytorium, uruchom
svnadmin recover
go. Polecenie kończy się natychmiast i ponownie udostępnia repozytorium.Z wyjątkiem repozytoriów, powinieneś wykonać kopię zapasową następujących informacji:
Pliki uwierzytelniania i autoryzacji przechowywane w katalogu głównym repozytoriów ( domyślnie „C: \ Repositories” ). W zależności od ustawień powinny znajdować się następujące pliki: „authz” , „authz-windows” i „htpasswd” .
Folder „% VISUALSVN_SERVER% \ certs \”, w którym przechowywane są informacje o certyfikatach SSL.
Folder „% VISUALSVN_SERVER% \ conf \”, w którym przechowywane są pliki konfiguracyjne serwera VisualSVN.
Klucz rejestru „HKEY_LOCAL_MACHINE \ SOFTWARE \ VisualSVN \ VisualSVN Server”, w którym przechowywana jest inna część konfiguracji serwera.
źródło
Robię to przez:
Możesz także spakować / zip, aby zaoszczędzić miejsce. Użyłem tej samej metody, kiedy przeniosłem SVN z Linuksa do VisualSVN, więc ta kopia zapasowa działa tak, jak powinna.
źródło
Najłatwiejszym i najlepszym sposobem tworzenia kopii zapasowych repozytorium SVN jest użycie svnsync . Jest to narzędzie przyrostowe, które odtwarza wszelkie zatwierdzenia do repozytorium kopii zapasowych. Łatwo jest zacząć - patrz ten post na blogu - i jest szybki, ponieważ wysyła tylko zmiany. Będziesz musiał ustawić hak po zmianie obrotów, aby złapać „przypadek krawędzi”, gdy ktoś aktualizuje historyczny poprawka, ale w przeciwnym razie możesz uruchamiać go co godzinę (tak jak ja), aby stale tworzyć kopie zapasowe. możesz nawet uruchomić go w haczyku po zatwierdzeniu, jeśli naprawdę masz paranoję na temat tworzenia kopii zapasowych danych!
Jeśli Twoje repozytorium na żywo umrze, możesz po prostu „przenieść svn” do repozytorium kopii zapasowej, dopóki nie uruchomisz jeszcze jednego repozytorium na żywo (należy jednak zachować ostrożność, jeśli napiszesz cokolwiek do kopii zapasowej, gdy transmisja jest wyłączona, chyba że uruchomisz svnsync, aby je uzyskać zmiany zastosowane w repozytorium na żywo, co jest dość oczywiste, gdy się nad tym zastanowić).
Dzięki temu masz ciągłe kopie zapasowe, a przestoje mierzone są w sekundach przy użyciu go przy minimalnym zużyciu zasobów. Kopie zapasowe nie są dużo lepsze!
źródło
Inną opcją jest hotcopy . Tworzy kopię zapasową całego repozytorium. Zajmuje więcej miejsca na dysku, ale jest bardzo łatwy do uruchomienia, a także bardzo łatwy do przywrócenia repozytorium przy użyciu tego.
źródło
VisualSVN to produkt Windows, więc będzie działał w systemie Windows. Jeśli narzędzie do tworzenia kopii zapasowych jest w stanie użyć kopii woluminu w tle do wykonania kopii zapasowej, powinno to zapewnić wewnętrznie spójną kopię zapasową. Wbudowane oprogramowanie NTBACKUP lub oprogramowanie innych firm, takie jak Symantec Backup Exec, lub narzędzia do tworzenia kopii zapasowych na dyskach wbudowane w system Windows Server 2008 mogą korzystać z funkcji kopiowania woluminów w tle.
źródło
Dla tych, którzy chcą po prostu wykonać kopię zapasową wszystkich repozytoriów w domyślnej instalacji Visual SVN w systemie Windows
Używam następującego skryptu cmd - zrzuca wszystkie podfoldery katalogu głównego repozytorium do ścieżki kopii zapasowej i zamyka je 7-suwakami .
źródło