Automatyczna kopia bezpieczeństwa z zapisem na płycie CDProgram 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.
"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