• 27-01-2009, 15:28:21
    #1
    Herkese Selam


    MS SQL 2000 enterprise server kullanıyorum

    en yeni db yedegim bundan 1 hafta onceye ait.yani 1 hafta once fb yedek almıstım.

    ve bugun yanlıslıkla Query analyzer den yazdgım komut sonucu tabloda 4800 row etkilendi

    bir tablo için komple tüm db nin 1 haftalık yedegini atmam imkansız....

    arastirmalarım sonucu TRANSACTION LOG ( .LDF ) dosyası bu query alanyzerdeki tüm komutları özellijkle UPDATE DELETE INTO gibi komutları once yedegini alıp sonra uyguladını okudum

    Lütfen db mi geri almadan once bu tabloda yaptıgım yanlıs komutu geri alıp verilerimi eski haline cevirebilrmiyim yardımcı olun


    bu transaction log dan 4800 row etkilenmeden evvelki haline geri almam lazım

    teşkkürler
  • 27-01-2009, 18:32:32
    #2
    up up güncel
  • 28-01-2009, 00:06:05
    #3
    Üyeliği durduruldu
    fikir istemişsin ama valla iç anlamam bu işlerden.
  • 28-01-2009, 23:43:04
    #4
    Commit komutundan once Rollback komutu ile geri donme sansin vardi. Fakat bunun icin cok gec oldugunu tahmin ediyorum. Su ana kadar commit etmemis olsan daha session'dan cikmissan kendiliginden commit ediyor. Yinede rollback transaction'i denemeni tavsiye ederim.
  • 28-01-2009, 23:48:28
    #5
    Üyeliği durduruldu
    Hostingcin ile görüşürsen bunlar çözebilir bende bi kere bu duruma düştüm bildirdim sağolsunlar hallettiler
  • 30-01-2009, 02:05:11
    #6
    falsealarm adlı üyeden alıntı: mesajı görüntüle
    Commit komutundan once Rollback komutu ile geri donme sansin vardi. Fakat bunun icin cok gec oldugunu tahmin ediyorum. Su ana kadar commit etmemis olsan daha session'dan cikmissan kendiliginden commit ediyor. Yinede rollback transaction'i denemeni tavsiye ederim.
    rollback transaction nasıl yapabilirim.
    mesela SQL de mutlaka yanlis QA komutu sonucu geri dondurmak olmalıdır o kadar basit degildir size bir örnek verim
    ACCOUNT isimli tabloda yaklasık 5000 kayit bulunmakta ve ben 1 satir degistirmek istedim onuda where komutu ile yapabiliyorum ama büyük bir hata yaparak unuttum ve böyle bir şey oldu
    update ACCOUNT set hesapid1='Denemedir'
    ve
    F5
    sonucunda (5000 row(s) affected)
    bu durumda hangi komutla bu bütün row lari geri alabilirim :S bilen varsa mutlaka söylerse çok makbule geçer
    yapmam gereken komut ise aynen şöyle olmalıydı ;
    update ACCOUNT set hesapid1='Denemedir' where accoundid='Mustafa'
    yanlış enterlenen bir QA "UPDATE" komutu nasıl geri alınabilir.Bir cok makalelerde bu gibi durumlar için "Transaction LOG ( yani .LDF uzantili dosya)" vardır ve bilgiler kurtarılır diyor fakat hiç biri nasıl olacaği hakkında fikir vermiyor. bilen birileri varsa mutlaka söylerse çok iyi olur
    Teşekkürler