sql >> データベース >  >> RDS >> Sqlserver

更新されたデータの回復 - SQL Server 2005

    AngelIII さん、こんにちは。SQL サーバーはすべてのトランザクションのログを保持します。そのため、ログからもバックアップなしで変更されたデータを復元できます。

    Select [PAGE ID],[Slot ID],[AllocUnitId],[Transaction ID] ,[RowLog Contents 0]
    , [RowLog Contents 1],[RowLog Contents 3],[RowLog Contents 4] ,[Log Record]
    FROM    sys.fn_dblog(NULL, NULL)   
    WHERE AllocUnitId IN 
    (Select [Allocation_unit_id] from sys.allocation_units allocunits 
    INNER JOIN sys.partitions partitions ON (allocunits.type IN (1, 3)   
    AND partitions.hobt_id = allocunits.container_id) 
    OR (allocunits.type = 2 AND partitions.partition_id = allocunits.container_id)   
    Where object_id=object_ID('' + 'dbo.student' + '')) 
    AND Operation in ('LOP_MODIFY_ROW','LOP_MODIFY_COLUMNS')  
    And [Context] IN   ('LCX_HEAP','LCX_CLUSTERED') 
    

    これは、その方法を段階的に説明する記事です。 http://raresql.com/2012/02/01/how-to-recover-modified-records-from-sql-server-part-1/



    1. ストアドプロシージャの実行後にレコードセットが閉じられました

    2. Rails + Mavericks上のMySQL-ライブラリがロードされていません:libmysqlclient.18.dylib

    3. OracleCommandBuilder.DeriveParameters()がOracleExceptionをスローします:ORA-06564:オブジェクトが存在しませんORA-06512:SYS.DBMS_UTILITYにあります

    4. NHibernateでGuidをId列として使用すると、MySQLを使用するときにフォーマット例外が発生します