Problemy z aplikacjami > KS-PPS

Automatyczna kopia bezpieczeństwa z zapisem na płycie CD

(1/7) > >>

Bartosz:
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. 


--- Kod: ---@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%
)

--- Koniec kodu ---

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ć.


--- Kod: ---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%
)
--- Koniec kodu ---

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.


--- Kod: ---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\
--- Koniec kodu ---

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


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

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


--- 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
--- Koniec kodu ---

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.."

--- Koniec cytatu ---

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

miszol:
a można tak zrobić żeby w nazwie pliku automatycznie pojawiała się data?

--- Kod: ---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%
)
--- Koniec kodu ---

Bartosz:
Jestem prawie pewien że można, ale nie pamiętam jak to można zrobić.

Przemyslaw:
date /t generuje aktualne datę, bez monitu i zmianę. Niestety nie pisałem batów od jakiś 10 lat.

miszol:
wielkie dzięki, przetestuję i dam znać

Nawigacja

[0] Indeks wiadomości

[#] Następna strona

Idź do wersji pełnej