TRUNCATE ステートメントは、テーブルまたはデータベースの構造を保持したまま、すべてのデータをすばやく削除するために使用します。
テーブルをTRUNCATEする
レプリカ上で操作が実行されるまで待機するよう設定するには、alter_sync 設定を使用できます。
非アクティブなレプリカが
TRUNCATE クエリを実行するまでの待機時間 (秒) は、replication_wait_for_inactive_replica_timeout 設定で指定できます。
alter_sync が 2 に設定されていて、replication_wait_for_inactive_replica_timeout 設定で指定された時間を超えて一部のレプリカが非アクティブのままである場合、例外 UNFINISHED がスローされます。TRUNCATE TABLE クエリは、次のテーブルエンジンではサポートされていません。
すべてのテーブルをTRUNCATEする
データベース内のすべてのテーブルからすべてのデータを削除します。
TRUNCATE DATABASE
データベース自体は残したまま、そのデータベース内のすべてのテーブルを削除します。句
IF EXISTS を省略すると、データベースが存在しない場合、クエリはエラーを返します。
TRUNCATE DATABASE は Replicated データベースではサポートされていません。代わりに、データベースを DROP してから CREATE してください。