Tiedostojen korjaus

Sisällysluettelo

Tiedostojen korjaus

Silloin tällöin jostain satunnaisesta syystä Pervasiven tiedostoon voi tulla vika. Yleensä syynä on laitevaurio, sähkökatkos jne. Tällöin tauluja on syytä korjata. Korjaustarve ilmenee seuraavilla virhekoodeilla 2 (I/O error) ja 30 (not a btrieve file). Lisäksi joskus on käynyt niin, että vaikka tietue (esim. tuote) varmasti on siellä, sitä ei hakemalla löydy tai sama tietue toistuu useasti. Suurin osa korjausksista vaatii että taululla ei ole muita käyttäjiä

Korjausmetelmiä on useita. Tarkista kuitenkin ensin tietueiden määrä esim. butil -stat tiedosto.dat, tietueiden määrä on otsikolla number of records.

On mahdollista että korjauksen aikana tietoja hukkuu. Esimerkiksi jos indexi on rikki s.e. tauluun onkin voinut lisätä kaksi tietuetta samalla avaimella ja korjaus koittaa korjata → toinen tietue katoaa.


Vaihtoehdot:

Palauta varmuuskopio

    • Suositelluin ja helpoin.


BClean

    • Huom! BClean.exe ei tule enää uusien ohjelmien mukana.
    1. Nimeä tiedosto.dat -> tiedosto.rik.
    2. Luo uusi tiedosto winskj:llä.
    3. Aja bclean tiedosto.rik tiedosto.dat.

Pervasiven Rebuild

    1. Tiedostojen uudelleenkirjoitus
      RBLDCLI /C C:\WINSKJ\FILES\*
    2. Tiedostojen eheytys
      (PSQL 12) CMD /C FOR /F %a in ('dir c:\winskj\files\*.dat /b /a /s') do dbdefrag %a
      (PSQL 13) dbdefrag c:\winskj\files\*.dat

BUTIL / Recover

    • Varmista, että winskj-kansiossa ei ole butil.exe:ä. Jos operaatio ei onnistu, voi kokeille myös parametrillä /J, joka käskee aloittaa tiedoston perästäpäin.
    1. butil -recover tiedosto.dat tiedosto.txt
    2. Poista tiedosto.dat
    3. Luo se winskj:llä uusiksi.
    4. butil -load tiedosto.txt tiedosto.dat.

WinSKJ tiedostokorjaus

    1. WinSKJ -> Tiedostojen selailu -> Tiedostohuollot -> Tiedostojen uudelleen luonti.
    2. Poista ensin ruksit kaikista tauluista.
    3. Ruksaa rikkinäinen taulu ja paina korjaa.

Brecover


    1. hae ohjelma https://tiedosto.skj.fi/index.php?dir=SKJUSB/Pervasive/&file=Brecover.12002.zip
    2. tee rikkinäisestä tiedostosta tyhjä uusi tiedosto butil -clone uusitiedosto rikkinainentiedosto
    3. aja brecover rikkinainentiedosto uusitiedosto

Kertymiä ja hakutermitauluja ei välttämättä kannata korjata

Mikäli rikkäinen tiedosto on kerv, kerk, kerp tai asker.dat, ashakuterm.dat, tuoteti.dat ei niitä välttämättä kannata korjata, varsinkin jos tietosto on pahasti vaurioitunut.  Kertymät voidaan luoda uudelleen tuotemyynnin perusteella tiedostojen selailu → tiedotohuollot → kertymien  uudelleen ajo ja hakutermit tiedostohuollot → hakuindexin päivitys. Ensin poistetaan vaan ko tiedosto alta ihan käyttöjärjestelmä tasolla.