collapse

Reklama


Autor Wątek: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD  (Przeczytany 36609 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Bartosz

  • Ekspert
  • *****
  • Wiadomości: 2375
  • Pomógł? 178
  • Kujawsko-Pomorski OW NFZ/Konsultant IT/KK
Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« dnia: Maj 04, 2008, 12:02:32 pm »
Automatyczna kopia bezpieczeństwa z zapisem na płycie CD

Program ma za zadanie wykonać kopie bezpieczeństwa bazy danych, a następnie skompresować plik bazy do formatu *.zip. Kolejny krok to wymazanie płyty CD/RW i zapisanie z ostatnich pięciu dniu kopii bazy danych programu KS-PPS. Poniższy kod programu jest napisany dla typowej instalacji KS-PPS.

Do tworzenia automatycznych kopii bezpieczeństwa będą nam potrzebne następujące programy:
- 7-zip na licencji bezpłatnej (GNU Lesser General Public License), można ściągnąć ze strony:  http://www.7-zip.org/pl/
- Nero wersja minimum 5.5, program płatny. 15 dniową wersję trial można ściągnąć: http://www.nero.com/plk/downloads-nero8-trial.php
   Program też dodawany jest razem z niektórymi napędami CD/DVD.
Ostatni element, który będzie nam potrzebny to płyta CD/RW.

Kod programu piszemy w notatniku i zapisujemy jako *.txt.
Przed wykonaniem pliku *.bat musimy utworzyć folder do której będą tworzone kopie bazy danych, standardowo jest to folder BACKUP utworzony na dysku C. Jeśli nie utworzymy folderu,  skrypt nie wykona się w rezultacie otrzymamy błąd. Oprócz bieżącej kopii znajdować się będą jeszcze w folderze 5 ostatnich wykonanych kopii bazy danych (czyli z całego tygodnia). Kolejne są automatycznie usuwane. 

@ECHO OFF
TITLE WYKONUJE KOPIE BEZPIECZENSTWA PROGRAMU KSPPS
IF EXIST C:\BACKUP\KSPPS5.zip DEL C:\BACKUP\KSPPS5.zip
IF EXIST C:\BACKUP\KSPPS4.zip MOVE/Y C:\BACKUP\KSPPS4.zip C:\BACKUP\KSPPS5.zip
IF EXIST C:\BACKUP\KSPPS3.zip MOVE/Y C:\BACKUP\KSPPS3.zip C:\BACKUP\KSPPS4.zip
IF EXIST C:\BACKUP\KSPPS2.zip MOVE/Y C:\BACKUP\KSPPS2.zip C:\BACKUP\KSPPS3.zip
IF EXIST C:\BACKUP\KSPPS1.zip MOVE/Y C:\BACKUP\KSPPS1.zip C:\BACKUP\KSPPS2.zip
IF EXIST C:\BACKUP\KSPPS.zip MOVE/Y C:\BACKUP\KSPPS.zip C:\BACKUP\KSPPS1.zip
"C:\Program Files\Firebird\Firebird_2_0\bin\gbak.exe" -b -user SYSDBA -pass masterkey LOCALHOST:C:\KS\KS-PPS\BAZA\KSPPS.FDB C:\BACKUP\KOPIA.bak
IF ERRORLEVEL 1 (
   PAUSE
   EXIT %ERRORLEVEL%
)

Uwaga!
Jeśli mamy zainstalowany bazę firebird na innym dysku musimy zmienić ścieżkę do pliku gbak.exe. dotyczy to również bazy danych programu KS-PPS.
Jeśli mamy ustawione inne hasło do bazy także musimy je zmienić.

TITLE KOMPRESJA PLIK KOPII BEZPIECZENSTWA PROGRAMU KSPPS
"c:\Program Files\7-zip\7zG.exe"  a  -mx1 C:\BACKUP\KSPPS.zip C:\BACKUP\KOPIA.bak
IF ERRORLEVEL 1 (
   PAUSE
   EXIT %ERRORLEVEL%
)

Uwaga!
Jeśli program 7-zip mamy za zainstalowany na innym dysku musimy zmienić ścieżkę
Parametr –mx oznacza stopień kompresji, 0 najmniejsza kompresja, ale najszybsza.

TITLE USUWANIE ZBEDNYCH PLIKOW
IF EXIST C:\BACKUP\KOPIA.bak DEL C:\BACKUP\KOPIA.bak > NUL
TITLE URUCHOMIENIE NERO AHEAD
SET PATH=c:\PROGRAM FILES\AHEAD\NERO\

Ścieżka do folderu z zainstalowany programem Nero, plik nerocmd.exe.

TITLE CZYSZCZENIE PLYTY CD/RW
nerocmd.exe --erase --entire --drivename f --speed 12

Jeśli chcemy zapisywać pliki bazy danych na zwykłych płytach CD, usuwamy powyższy kod.

TITLE ZAPISYWANIE NA PLYTE CD/RW
nerocmd,exe --write --drivename f --real --disable_eject --underrun_prot --iso KOPIA_KSPPS --create_iso_fs "C:\BACKUP\*.*"
TITLE OK
REM Koniec procedury

Literka przy  --drivename, oznacza napęd CD, należy ją zmienić.
Liczba przy –speed oznacza z jaką prędkością dane będą zapisywane na płytę CD.

Po dostosowaniu pliku do własnych potrzeb, należy zmienić rozszerzenie pliku z *.txt na *.bat.
Jeśli nie można zmienić rozszerzenia pliku, należy w explorerze Windows zmienić narzędzia -> opcje folderów -> zakładka widok -> odznaczyć: ukryj rozszerzenia znanych typów plików.

Zaplanowanie zadania

Kolejny krok to sprawienie aby wykonywała się nam kopia o danej godzinie i codziennie. Wchodzimy: START -> wszystkie programy -> akcesoria ->  narzędzia systemowe -> zaplanowane zadania -> dodaj zaplanowane zadania. Kreator przeprowadzi nas przez proces planowania.

Jeśli komuś w systemie Windows XP wyswietlił się błąd podczas dodawania zadanie, aby rozwiązać problem należy założyć hasło na użytkownika systemu.
Cytuj
"Podczas próby ustawienia informacji o koncie zadania wystąpił błąd..
Konkretny błąd:
0x80070005: Odmowa dostępu.
Nie masz uprawnień do wykonania żądanej operacji.."

Program testowałem na następującym oprogramowaniu:
Windows Vista SP1 Ultimate + Nero 8 + 7-zip 4.42
Windows XP SP2/SP3 Professional + Nero 6.6.0.16 + 7-zip 4.42

« Ostatnia zmiana: Maj 06, 2008, 00:19:09 am wysłana przez Bartosz »
Pozdrawiam
Bartosz

Offline miszol

  • Sponsorzy Forum
  • Ekspert
  • *****
  • Wiadomości: 637
  • Pomógł? 33
  • Wielkopolski OW NFZ
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #1 dnia: Grudzień 16, 2009, 13:44:59 pm »
a można tak zrobić żeby w nazwie pliku automatycznie pojawiała się data?
TITLE KOMPRESJA PLIK KOPII BEZPIECZENSTWA PROGRAMU KSPPS
"c:\Program Files\7-zip\7zG.exe"  a  -mx1 C:\BACKUP\KSPPS.zip C:\BACKUP\KOPIA.bak
IF ERRORLEVEL 1 (
   PAUSE
   EXIT %ERRORLEVEL%
)

Offline Bartosz

  • Ekspert
  • *****
  • Wiadomości: 2375
  • Pomógł? 178
  • Kujawsko-Pomorski OW NFZ/Konsultant IT/KK
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #2 dnia: Grudzień 16, 2009, 13:50:30 pm »
Jestem prawie pewien że można, ale nie pamiętam jak to można zrobić.
Pozdrawiam
Bartosz

Offline Przemyslaw

  • ForumPPS.pl
  • Administrator
  • Ekspert
  • *****
  • Wiadomości: 1265
  • Pomógł? 32
  • Zachodniopomorski OW
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #3 dnia: Grudzień 16, 2009, 14:32:21 pm »
date /t generuje aktualne datę, bez monitu i zmianę. Niestety nie pisałem batów od jakiś 10 lat.

Offline miszol

  • Sponsorzy Forum
  • Ekspert
  • *****
  • Wiadomości: 637
  • Pomógł? 33
  • Wielkopolski OW NFZ
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #4 dnia: Grudzień 16, 2009, 14:47:20 pm »
wielkie dzięki, przetestuję i dam znać

Offline Bartosz

  • Ekspert
  • *****
  • Wiadomości: 2375
  • Pomógł? 178
  • Kujawsko-Pomorski OW NFZ/Konsultant IT/KK
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #5 dnia: Grudzień 16, 2009, 22:35:33 pm »
Rozwiązanie jest proste:

TITLE KOMPRESJA PLIK KOPII BEZPIECZENSTWA PROGRAMU KSPPS
"c:\Program Files\7-zip\7zG.exe"  a  -mx1 C:\BACKUP\KSPPS_"%date%".zip C:\BACKUP\KOPIA.bak
IF ERRORLEVEL 1 (
   PAUSE
   EXIT %ERRORLEVEL%
)
Pozdrawiam
Bartosz

Offline miszol

  • Sponsorzy Forum
  • Ekspert
  • *****
  • Wiadomości: 637
  • Pomógł? 33
  • Wielkopolski OW NFZ
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #6 dnia: Grudzień 17, 2009, 11:29:58 am »
dzięki za pomoc, działa tak jak powinno :) - sposób Bartosza

aż się dziwię że dopiero teraz zacząłem automatycznie robić kopie bezpieczeństwa i kopiować na pena i innego kompa, do tej pory codziennie robiłem to ręcznie

Offline PiotrSz

  • Administrator
  • Ekspert
  • *****
  • Wiadomości: 2846
  • Pomógł? 90
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #7 dnia: Grudzień 17, 2009, 18:47:31 pm »
witam

jak juz mamy Nero to mozna wykorzystac tez programik Nero Backitup z pakietu
tylko wypadaloby najpierw wylaczyc serwer firebirda a po zrobieniu kopii go wlaczyc
ja to zautomatyzowalem harmonogramem zadan i odpowiednimi poleceniami dla Firebird Guardiana

ale jak juz skryptujemy to podany powyzej pomysl tez mi sie podoba !

pozdrawiam

Offline Bartosz

  • Ekspert
  • *****
  • Wiadomości: 2375
  • Pomógł? 178
  • Kujawsko-Pomorski OW NFZ/Konsultant IT/KK
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #8 dnia: Grudzień 17, 2009, 20:56:06 pm »
Można też zrobić tak, aby nazwa pliku kopii bezpieczeństwa była z data i godziną utworzenia.

)
rem
set _my_datetime=%date%_%time%
set _my_datetime=%_my_datetime: =_%
set _my_datetime=%_my_datetime::=%
set _my_datetime=%_my_datetime:/=_%
set _my_datetime=%_my_datetime:.=_%
)
TITLE KOMPRESJA PLIK KOPII BEZPIECZENSTWA PROGRAMU KSPPS
"c:\Program Files\7-zip\7zG.exe"  a  -mx1 C:\BACKUP\KSPPS_%_my_datetime%.zip C:\BACKUP\KOPIA.bak
IF ERRORLEVEL 1 (
   PAUSE
   EXIT %ERRORLEVEL%
)

Pozdrawiam
Bartosz

Offline szamot

  • Początkujący
  • *
  • Wiadomości: 15
  • Pomógł? 3
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #9 dnia: Luty 09, 2010, 18:35:16 pm »
Dzieki za swietny skrypt. Pytanie: jak to potem odtworzyc ? Czy da sie tak po prostu skorzystac z "odtwarzania bazy danych" w KS-PPS ?

Offline Bartosz

  • Ekspert
  • *****
  • Wiadomości: 2375
  • Pomógł? 178
  • Kujawsko-Pomorski OW NFZ/Konsultant IT/KK
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #10 dnia: Luty 09, 2010, 20:32:02 pm »
Dzieki za swietny skrypt. Pytanie: jak to potem odtworzyc ? Czy da sie tak po prostu skorzystac z "odtwarzania bazy danych" w KS-PPS ?

Taką kopie odtwarza się z w module serwis programu. Proponuje sobie sprawdzić na jakiejś instalacji testowej.
Pozdrawiam
Bartosz

Offline szamot

  • Początkujący
  • *
  • Wiadomości: 15
  • Pomógł? 3
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #11 dnia: Luty 09, 2010, 22:51:18 pm »
Taką kopie odtwarza się z w module serwis programu. Proponuje sobie sprawdzić na jakiejś instalacji testowej.

Tak tez zrobilem. Na oko patrzac wyglada w porzadku. Jednak pliki *.bak wykonane Twoim skryptem i z wykorzystaniem kopii bezpieczenstwa z modulu Serwis roznia sie od siebie. Plik zrobiony przez KS-PPS jest wiekszy o 512 bajtow, sam juz nie wiem co o tym myslec :/

Offline Michał

  • ForumPPS.pl
  • Administrator
  • Ekspert
  • *****
  • Wiadomości: 2127
  • Pomógł? 51
  • Kujawsko-Pomorski OW
    • NZOZ "ARS MEDICA" Przychodnia Lekarska
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #12 dnia: Październik 16, 2010, 19:39:18 pm »
z firebirdem dostajemy narzędzie do wykonywania kopii przyrostowej (nbackup.exe). Jest to o tyle istotne, że program ten umożliwia wykonywanie kopii bezpieczeństwa również w trakcie pracy użytkowników. Mam jednak problem aby wykonać pełną kopie. Czy komuś się to udało? W necie znalazłem informację, że narzędzie to może nie działać poprawnie (może dojść nawet do uszkodzenia bazy) z  wersją firebirda (2.0.3) dostarczaną przez kamsoft. Czy ktoś bardziej zaznajomiony z firebirdem może to potwierdzić? Czy wiadomo na jakiej wersji firebird PPS będzie działał poprawnie a jednocześnie będę mógł tworzyć kopie bazy za pomocą nbackup.exe
a może robię coś źle?
Cytuj
nbackup.exe -U SYSDBA -P masterkey -B 0 LOCALHOST:C:\KS\KS-PPS\BAZA\KSPPS.FDB C:\BACKUP_INC\KOPIA_INC_0.nbk
pojawia się błąd
Cytuj
Failure: Error (80) creating backup file: C:\BACKUP_INC\KOPIA_INC_0.nbk
i tworzy się plik o wielkości 0KB

Próbowałem na win xp he oraz na win7 pro 64bit i efekt taki sam.
Pozdrawiam
Michał (michalszy)

Offline PiotrSz

  • Administrator
  • Ekspert
  • *****
  • Wiadomości: 2846
  • Pomógł? 90
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #13 dnia: Październik 18, 2010, 08:20:42 am »
witam

nie probowalem jeszcze nigdy kopii z nbackup.exe ale za to mam sprawdzone dzialanie PPSa na nowszym Firebirdzie
od jakiegos czasu uzywam wersji 2.0.5.13206 i nie mam z nia wiekszych klopotow (tzn sa takie jak byly wczesniej na starszej ;-)
ta wersja to rozwiniecie linii na ktorej byla "Kamsoftowa" 2.0.3 wiec problemow z licencja nie ma jak na serii 2.5 bodajze

proponuje wczesniej zapytac Kamsoft co sadza o tej wersji

pozdrawiam

Offline Michał

  • ForumPPS.pl
  • Administrator
  • Ekspert
  • *****
  • Wiadomości: 2127
  • Pomógł? 51
  • Kujawsko-Pomorski OW
    • NZOZ "ARS MEDICA" Przychodnia Lekarska
Odp: Automatyczna kopia bezpieczeństwa z zapisem na płycie CD
« Odpowiedź #14 dnia: Październik 18, 2010, 09:43:19 am »
Dzięki za info. Jak znajdę trochę czasu to postaram się potestować również inne wersje firebirda. Tymczasem wysłałem zapytanie do kamsoftu.
Pozdrawiam
Michał (michalszy)

 


* Kalendarz Świadczeniodawcy

Październik 2018
Nd Pn Wt Śr Cz Pt So
1 2 3 4 5 6
7 8 9 10 11 12 13
14 [15] 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

Nie znaleziono żadnych wydarzeń w kalendarzu.

* Szukaj


* Shoutbox

Odśwież Historia
  • Nie ma jeszcze żadnych wiadomości!

* Kto jest on-line

  • Kropka Gości: 50
  • Kropka Ukrytych: 0
  • Kropka Użytkowników: 2
  • Kropka Użytkownicy online:

* Aktywni

Paweł Paweł
7683 Wiadomości
mpi
3356 Wiadomości
PiotrSz
2846 Wiadomości
Bartosz Bartosz
2375 Wiadomości
Edward_B Edward_B
2165 Wiadomości
maciek777 maciek777
2134 Wiadomości
Michał Michał
2127 Wiadomości
09061303
1693 Wiadomości
bart bart
1466 Wiadomości
Przemyslaw Przemyslaw
1265 Wiadomości