HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

TIBBackupService komponens


Interbase 17. rész

Példaprogram letöltése

3981 bájt

Vizsgáljuk meg, hogyan tudunk adatbázisunkról biztonsági másolatot készíteni.
Az IBBackupService komponens segítségével beépíthetjük programunkba a biztonsági másolat készítésének lehetőségét. Ezt a szolgáltatást azonban csak az adatbázis tulajdonosa vagy a SYSDBA felhasználó tudja igénybe venni.

Tulajdonságok
  • BackupFile: A biztonsági másolatot tartalmazó fájl neve. Ha rendszerünk NT-s és egy másik hálózati gépen is az NT operációs rendszer fut, akkor az UNC elnevezésű konvenciót használva hálózati mentést is végezhetünk. Más esetekben a program ezt a lehetőséget nem támogatja.
  • BlockingFactor: Csak szalagos mentés esetén használjuk.
  • Options: A mentés tulajdonságait állíthatjuk be:
- IgnoreChecksum: Az ellenőrző összeget (checksum) lapról-lapra határozzák meg az adatok helyességének ellenőrzésére. Ha az összeg hibás, az adatbázis adott lapja valamilyen oknál fogva sérült. Az opcióval beállíthatjuk, hogy a hibás ellenőrző összegű lapról másolat készüljön-e. Ha az opciónak True értéket adunk, akkor ez az ellenőrzés elmarad, és minden lapról másolat készül.
- IgnoreLimbo: A limbo tranzakció egy hibás tranzakció, akkor keletkezik, amikor egy tranzakciót valamilyen ok megakadályoz abban, hogy befejeződjön. Az adatmódosítás bekerül az adatbázisba, de úgy, hogy sem commit, sem rollback utasítás nem érkezik a rendszerhez. Tehát úgy foghatjuk fel, hogy egy tranzakció folyamán adatmódosítás történik, de nem érkezik a tranzakció befejezésére utasító parancs. Az adatbázis adminisztrátora tudja eltávolítani. A lehetőség beállításával (True) a mentett adatbázisba nem kerülnek át a limbo tranzakció eredményei.
- MetadataOnly: Az adatbázisra jellemző adatokat menthetjük. Hasznos lehet, ha az adatbázisról egy üres másolatot készítünk, az adatokat viszont nem mentjük.
- NoGarbageCollection: Tudjuk, hogy az adataink régebbi változatait automatikusan elmenti a rendszer egy speciális területre. Ha ezeket az adatokat nem szeretnénk elmenteni, állítsuk hamisra.
- OldMetadataDesc: Ha az adatbázisra jellemző adatokat a korábbi verziók formájában szeretnénk menteni, használjuk ezt a lehetőséget.
- NonTransportable: Ha értéke false, akkor az adatokat egy általános formában menti a rendszer, hogy bármilyen gépen, bármilyen operációs rendszer alatt (Unix, Sun) visszaállíthatók legyenek, amelyek képesek az InterBase futtatására.
- ConvertExtTables: Állítsuk igazra, ha azt szeretnénk, hogy konvertáljunk külső fájlokat a belső tábláinkba.

Események
  • OnAttach: Az adatbázishoz kapcsolódáskor bekövetkező esemény.
  • OnLogin: A bejelentkezéskor aktiválódó esemény.

Metódusok
  • GetNextLine: Az információk következő sorát adja vissza.
  • ServiceStart: A szolgáltatás elindítását végző eljárás.

A komponens használata
Húzzunk a Form-ra egy TIBBackupService, egy TMemo és egy TButton komponenst.
Adjuk meg a nevét és az elérési útját a menteni kívánt adatbázisnak a DatabaseName tulajdonságnál, és állítsuk be a BackupFile tulajdonságot. Ezeket a kódban is beállíthatjuk:
procedure Tform1.Button1Click(Sender:Tobject);
begin
with IBBackupService1 do
  begin
    DatabaseName:=’d:\gknyilv.gdb’;
    BackupFile.Add(’d:\mentes\gknyilv.gbk’);
  end;
end;
Kapcsolódjunk az adatbázishoz:
…
with IBBackupService1 do
begin
  ServerName:=’gep’;
  LoginPrompt:=false;
  Params.Add(’user_name=SYSDBA’);
  Params.Add(’password=masterkey’);
  Active:=true;
end;
…
Állítsuk be a lehetőségeket és indítsuk a mentést:
…
with IBBackupService1 do
try
  Verbose:=true;  //információkat kapunk a mentési folyamatról
  Options:= [NonTransportable, IgnoreLimbo];
  ServiceStart;   //a mentési folyamat elindítása
  with not Eof do
  Memo1.Lines.Add(GetNextLine);  // az információk megjelenítése
finally
  Active:=false;
 end;
end;
Ha több fájlba szeretnénk adatbázisunkat menteni:
BackupFile.Add(’d:\mentes\e1.gbk=2048’);
BackupFile.Add(’d:\mentes\e2.gbk=4096’);
BackupFile.Add(’d:\mentes\e3.gbk’);
A számok a fájlok méretét szabályozzák. Az utolsó fájlhoz nem szabad méretet definiálnunk.




Cikksorozat

#IDKategóriaCikk címeSorozat
1166DelphiOsztály hierarchia lekérdezése1. rész
1180DelphiOsztály hierarchia lekérdezése2. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2001 évkönyv 531. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |