Anda dapat menggunakan CREATE TEMPORARY TABLE temp_table LIKE regular_table
, tapi itu akan membuat semua indeks, jadi ketika Anda melakukan INSERT INTO temp_table SELECT * FROM regular_table
, indeks akan dibangun kembali - yang mungkin akan memakan waktu lama.
Atau, Anda dapat membuat tabel dan menambahkan indeks setelahnya:
CREATE TEMPORARY TABLE temp_table
ALTER TABLE temp_table ADD FULLTEXT INDEX (foo,bar,baz)
INSERT INTO temp_table SELECT * FROM regular_table
tetapi indeks akan, sekali lagi, diperbarui pada setiap sisipan.
Mungkin cara yang paling efisien adalah dengan membuat tabel temp, memasukkan semua, membangun indeks setelahnya:
CREATE TEMPORARY TABLE temp_table
ALTER TABLE temp_table ADD FULLTEXT INDEX (foo,bar,baz)
ALTER TABLE temp_table DISABLE KEYS
INSERT INTO temp_table SELECT * FROM regular_table
ALTER TABLE temp_table ENABLE KEYS
Sekali lagi, Anda harus menunggu indeks untuk membangun, kecuali itu akan terjadi dalam satu bagian, dengan pernyataan ALTER terakhir.