MySQL 8.0 リファレンスマニュアル


8.2.5.3 DELETE ステートメントの最適化

MyISAM テーブル内の個々の行を削除するために必要な時間は、インデックスの数に正確に比例します。 行をもっと速く削除するには、key_buffer_size システム変数を増やして、キーキャッシュのサイズを大きくできます。 セクション5.1.1「サーバーの構成」を参照してください。

MyISAM テーブルからすべての行を削除するには、TRUNCATE TABLE tbl_name の方が DELETE FROM tbl_name より速くなります。 切り捨て操作はトランザクションセーフではありません。アクティブなトランザクションやアクティブなテーブルロックの途中で試みるとエラーが発生します。 セクション13.1.37「TRUNCATE TABLE ステートメント」を参照してください。


関連キーワード:  テーブル, インデックス, InnoDB, ステートメント, 結合, クエリー, 状態, データ, データベース, キャッシュ