Results 1 to 7 of 7
  1. #1
    Join Date
    Feb 2005
    Posts
    4

    Unanswered: Howto recover a corrupted ASA6.0 ODBC Database without Transaction log

    Hi there,

    we have a business software which bases upon a sybase odbc database. The files xxx.db and xxx.log reside in a network folder on a linux server. Unfortunately this network folder haven't been backed up since app. 3 months where the database has been used in this time and filled with data!

    During an open session yesterday the database suddenly brought an error like: invalid database file, cannot connect to the database file or so on.

    I checked the connectivity to the network folder it was there. I contacted to the software house and wanted to send the log and db files to them. By the process of compression the log file has been dismissed accidently. So we have now only a db file which cannot be connected anymore.

    Could anyone have an idea how to fix this database without a transaction log. There are a lot of report data in the database which we should retrieve!

    Many thanks!

  2. #2
    Join Date
    Feb 2004
    Location
    Novi Sad, Serbia
    Posts
    11
    Try with -f switch from console, it is trying to force db to bring up widthout the transakcion log.
    You use it with -o \tmp\recovery.log to see whats going on and what kind of error You have.

  3. #3
    Join Date
    Feb 2005
    Posts
    4
    Quote Originally Posted by jutikus
    Try with -f switch from console, it is trying to force db to bring up widthout the transakcion log.
    You use it with -o \tmp\recovery.log to see whats going on and what kind of error You have.
    Thanks for your mail! Yo know I am a "forced" novice to the subject sybase. I made following:

    On the dos command line I enter:
    dbeng6.exe -f xxx.db

    I received following message:
    internal database error *** ERROR *** Assertion failed:201423
    Invalid free space offset detected when reading a free list page -- transaction rolled back

    which is the same message each time I receive.

    Where should be actually this tmp folder placed?

  4. #4
    Join Date
    Feb 2004
    Location
    Novi Sad, Serbia
    Posts
    11
    OK.

    the switch -o is to put messages in to log file, anywhere, from my experince if you got msg like:
    > internal database error *** ERROR *** Assertion failed:201423

    It's mean that db file is corrupted, and no more things to do...

    Another way is to FIND the log file. do undelete, partition recovery or something, just find it. When you get it, apply that log file to backup from 3 month ago:

    dbeng6.exe -o c:\temp\recovery.log -a xxx.log xxx.db

    it will apply all changes (which are in LOG file) to old database and if all OK you will get db up to date..

    Good Luck.

  5. #5
    Join Date
    Feb 2005
    Posts
    4
    Don't you see any possibility to retreive and transform the database objects in some way so that they could be reimported into the old backup db file?

    My problem is that I do not have the log file anymore!

  6. #6
    Join Date
    Feb 2004
    Location
    Novi Sad, Serbia
    Posts
    11
    The only way you can acces data is when database is running. I don't know any other kind of metode.

    ...think you loose the data this time.... sorry

  7. #7
    Join Date
    May 2004
    Location
    The Deep South
    Posts
    13
    normally you are "out of luck" at this point. The assertion failed generally means that the engine no longer knows how to read the database.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •