Results 1 to 5 of 5
  1. #1
    Join Date
    Sep 2005
    Posts
    11

    Arrow Unanswered: retrieving deleted records ?

    Hi all, here is the question:

    State A:
    Certain Sybase db has tables filled with some records.

    State B:
    Some of the records has been deleted, and the db saved at state B.

    Is there a way (tool) to retrieve entire state A (or deleted records only)?


    Many thanks in advance

  2. #2
    Join Date
    Feb 2002
    Location
    Willy is on vacation
    Posts
    1,208
    Unlike Oracle, there is no concept of flashback from redo logs in Sybase ASE. If you contact hardcore Sybase fans, they will say "dumb users don't deserve Sybase anyway". The fact of the matter is people do this sort of thing by accident all the time. Sybase's arrogance in understanding user has cost it market share all along. A long time ago CA used to sell a product called "Log Analyzer" that worked in restoring the log into a db. If you have lost or truncted your transaction log, no tool wil help you resurrect the db to "State A"

    On the other hand Sybase ASA is a bit smarter, it commits the transaction and writes to disk in the .db file however you can maintain your transaction log indefinetly and you can use dblog utiltity to reverse engineer the transaction log and resurrect the db to any state.

  3. #3
    Join Date
    Sep 2005
    Posts
    11

    Thumbs up

    Quote Originally Posted by willy_and_the_ci
    If you have lost or truncted your transaction log, no tool wil help you resurrect the db to "State A"
    Amen to that.
    This is exactly what i want (sorry for not explaining at first).

    How to turn off transaction logging ?

    Any additional advice about how to disable retrieving deleted records?


    Thanks a lot

  4. #4
    Join Date
    Feb 2002
    Location
    Willy is on vacation
    Posts
    1,208
    unlike MySQL there is no officially supported nolog method in Sybase.

    However, you can use traceflag -T699 in your RUN file to get a similar effect. This isn't supported by Sybase and comes with a big DISCLAIMER that it will screw up the database.

    remember this traceflag works at a server level, so you can end up trashing the whole server including all system databases. To be honest, I have never used this one.

  5. #5
    Join Date
    Sep 2005
    Posts
    11
    Hi Willy,

    I'd ask, what do you think about these opinions:
    and if you're trying to make sure there is absolutely no way to recover data that you deleted (i.e., as in some sort of security) then forget about it. you'll need to design your own database system to do this. this is not a goal or feature of any commercial or opensource database that i know of.
    Deleting stuff from a hard disk so that it can never ever be recovered is actually very difficult indeed.
    I'm interested how these people meant to recover abandoned strings from somewhere on a HD, and put it in some logical (data base) sense?

    Are a db records put on a HD as an array of characters in successive locations on hd tracks, like:

    150100 - ordinal_numeral (2 bytes)
    150103 - data 1 (8 bytes)
    150111 - data 2 (12 bytes)
    and so on..

    and if i recover such a record from HD surface, maybe i could get just an array of strings like:
    ordinal_numberdata1data2, no matter is it some db record or plain text from a txt file.
    But it would be pretty obvious that it's deleted record from the db.

    If so, then this could be a problem.

    Thanks
    Last edited by santaclose; 02-15-07 at 18:47.

Posting Permissions

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