mysqlのロールバックログの使い方
MySQLのUndoログはトランザクション内の操作をロールバックし、データの一貫性を確保するために使用されます。以下はMySQLのUndoログを使用する手順です。
- マイSQL設定ไฟล์(通常はmy.cnf、my.ini)の[mysqld]セクションに下記設定を追加する事でログを有効化
- innodb_undo_logs=1
innodb_undo_tablespaces=2 - これにより、ロールバックログファイルがオープンされ、ロールバック用の表領域が 2 つ割り当てられます。
- トランザクションの作成:MySQL で 1 つ以上の操作を実行し、これらの操作をトランザクションに含める。
- もしもトランザクションの実行中にエラーが発生したら、トランザクションをロールバックして、実行済みのオペレーションをキャンセルできます。トランザクションをロールバックするには以下のコマンドを使用します:
- ロールバック;
- ロールバックされたトランザクションに対してロールバックログが適用された後は、データは自動的にロールバック前の状態に復元されます。
注意、InnoDBストレージエンジンを使用したテーブルだけがロールバックログ機能をサポートしています。