多くの友人がこの問題に遭遇したかもしれません:
update または delete ステートメントに where 句が含まれているか、where 句が十分に正確ではないため、実行後に重大な結果が生じました。 したがって、この場合のデータ回復にはトランザクション ログのみが使用されます。 SQL に対応する完全なデータベース バックアップがない場合、またはログをバックアップできない場合 (チェックポイントのログ切り捨てオプションが 1)、データは復元できないか、最新のバックアップ データにのみ復元できます。
以下は、データ復旧方法の簡単な説明です:
1. 誤操作の前にデータベースの完全バックアップ (または複数の差分バックアップまたは増分バックアップ) があった場合、最初に行うことはログ バックアップ (ログ バックアップ) を実行することです。回避するには、ログ ファイルが大きくなった場合、chkpt で trunc を設定します。オプションが 1 の場合、死んでしまいます)
ログ dbName を disk='fileName' にバックアップし、データベースの完全バックアップを復元することに注意してください。まだある場合は、norecovery と併用する必要があります。 他の差分バックアップまたは増分バックアップの場合は、1 つずつ復元します
norecovery を使用して、データベース dbName を disk='fileName' から復元します
3. 最後のログ バックアップ (作成したばかりのログ バックアップ) を復元します。そして、誤操作の直前の回復時点を指定します
stopat='date_time' を使用して、ログ dbName を disk='fileName' から復元します
上記の操作は SQL SERVER Enterprise Manager で完了でき、難しいことではありません。 。 。
もちろん、誤用がテーブルの切り捨てやselect intoなどのログに記録されない操作である場合、上記の方法を使用してデータを回復することはできません...
http://www.bkjia.com/PHPjc/630950.html
。