3
mysqldump --single-transaction、それでも更新クエリはバックアップを待機しています
mysqldump --single-transactionを使用する場合、ドキュメントによると、読み取りロックでテーブルをフラッシュして一貫した状態を取得し、トランザクションを開始する必要があります。ライターは待機していません。 しかし、私は昨夜、次の状況に遭遇しました: show fullプロセスリストからの抜粋: 何百もの... Command: Query Time: 291 State: Waiting for table flush Info: insert into db_external_notification..... 次にこれ: Command: Query Time: 1204 State: Sending data Info: SELECT /*!40001 SQL_NO_CACHE */ * FROM `db_external_notification` 残りのスレッドはスリープ状態です これらの挿入が何を待っているのか誰かが何か知っていますか?クエリを待機させるFLUSHテーブル、DDL、またはマニュアルに記載されているものはありません。 mysqldumpコマンド全体 mysqldump --quick --add-drop-table --single-transaction --master-data=2 -uxx -pxx dbname 私は--quickはここでは冗長であると思います、おそらく以前の時間からの残り物です、このスクリプトは非常に古いですが、何も害しないはず