MyISAMとInnoDBの両方を使用するMySQLデータベースの論理バックアップについて質問があります。
mysqldump
ユーティリティは、これらの2つのオプションがサポートされています。
--single-transaction-すべてのテーブルを単一のトランザクションでダンプすることにより、一貫したスナップショットを作成します。マルチバージョニングをサポートするストレージエンジンに格納されているテーブルに対してのみ機能します(現在はInnoDBのみがサポートしています)[...]オプションは自動的に--lock-tablesをオフにします。
-x、-lock-all-tables-すべてのデータベースのすべてのテーブルをロックします。これは、ダンプ全体の期間中、グローバルな読み取りロックをとることによって実現されます。--single-transactionと--lock-tablesを自動的にオフにします。
InnoDBには、
--single-transaction
MyISAMには、lock-tablesまたはlock-all-tablesが必要です(データベース間の整合性が必要な場合)。
それでは、ハイブリッドデータベース(MyISAMエンジンとInnoDBエンジンの両方を使用するデータベース)はどのようにバックアップされることになっていますか?
編集:
明確にするために、質問は次のように再定式化できます。
lock- [all-] tablesオプションはInnoDBテーブルの一貫したバックアップを保証しますか?