MySQL は一般的に使用されるリレーショナル データベース管理システムであり、多くの開発者がデータの保存と管理に MySQL を使用しています。 MySQL を使用する過程で、データの削除は非常に一般的な操作ですが、場合によっては、誤って削除したり、誤って削除したりすると、大きな問題が発生する可能性があります。したがって、この記事では、MySQL の削除されたデータの回復方法について説明します。
MySQL データは、DELETE および DROP ステートメントを使用して削除できます。通常、DELETE ステートメントはテーブル内のデータ行を削除するために使用され、DROP ステートメントはテーブル全体とそのデータを削除するために使用されます。どの削除方法を使用しても、一度削除されたデータに直接アクセスして復元することはできません。
2.1 MySQL Binlog を使用してデータを回復する
Binlog は、MySQL サービスによって記録されたすべてのデータベース変更のログです。削除操作を含むデータベース操作はバイナリ ファイルに記録されます。したがって、Binlog ファイルを表示すると、データを削除した SQL ステートメントを見つけて、削除されたデータを復元できます。
Binlog の場所は、次の手順で見つけることができます。
(1) MySQL コンソールにアクセスします。
(2) SHOW BINARY LOGS と入力します。
(3 ) Binlog の名前と場所を含む SHOW BINARY LOGS クエリの結果を記録します。
Binlog の場所を見つけたら、mysqlbinlog コマンドを使用して Binlog の内容を表示し、 SQL ステートメントを検索して削除するための grep などのツール。
この方法ではMySQLのBinlog機能がオンになっている必要があり、オンになっていない場合は使用できません。同時に、Binlog を使用してデータを回復するには、一定の技術レベルと、MySQL コマンド ライン ツールと Linux コマンド ラインのある程度の習熟が必要です。
2.2 データベースのバックアップとリカバリ
データベースのバックアップとリカバリは、非常に一般的なリカバリ方法です。データを削除する前にバックアップを作成した場合は、バックアップ ファイルを使用してデータを復元することを選択できます。
データをバックアップするときは、MySQL が公式に推奨している mysqldump コマンドを使用できます。このコマンドは、データベース全体または特定のテーブルをファイルにバックアップできます。
MySQL データベースをバックアップするコマンドは次のとおりです:
$ mysqldump -u ユーザー名 -p データベース名> バックアップ ファイル パス
バックアップされたデータベースを復元する必要がある場合は、データベースを起動するには、次のコマンドを使用できます:
$ mysql -u ユーザー名 -p データベース名< バックアップ ファイル パス
ただし、長期間バックアップがない場合は注意が必要です。データを削除すると、バックアップファイルの有効期限が切れているか、データ削除後に削除されている可能性があるため、データを復元することは非常に困難になります。
2.3 Undrop-for-Innodb プラグイン
Undrop-for-Innodb は、削除されたデータをある程度回復できるサードパーティのプラグインです。このプラグインは InnoDB ストレージ エンジンで使用する必要があり、MySQL の起動時にロードする必要があります。
このプラグインの使用方法は、通常のデータ回復とは異なります。まず、データ挿入時間と削除時間の差に基づいて、削除されたデータを復元する必要があります。そのため、データを削除してから長期間が経過した場合、データを復元することは非常に困難になります。
プラグインは、回復時に新しいデータベースを作成し、回復されたデータを新しいデータベースに挿入します。これは、プラグインがすべてのデータのみを回復でき、個々のデータを回復できないことも意味します。
しかし、この方法は他の方法と比べて比較的シンプルで使いやすく、バックアップせずにデータを復元できます。
MySQL でのデータの削除は一般的な操作ですが、誤って削除するとデータが失われる可能性があります。この記事では、Binlog、データベースのバックアップとリカバリ、サードパーティのプラグイン Undrop-for-Innodb の使用など、MySQL の削除されたデータのいくつかのリカバリ方法を紹介します。ただし、どの方法を使用する場合でも、回復時間やデータが上書きされるかどうかなどの要素に注意する必要があります。データ削除後にタイムリーにデータを復元できるようにしたい場合は、バックアップが最も重要です。
以上がmysql削除の回復の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。