Tabel MySQL tidak mendukung optimalisasi


9

Tabel Wordpress saya tampaknya membutuhkan optimasi, jadi saya melihat ke dalam TABEL MENGOPTIMALKAN commmand. Ketika saya menjalankan perintah saya mendapatkan hasil berikut:

Tabel tidak mendukung optimisasi, malah membuat ulang + menganalisis

Tabel dibuat menggunakan penginstal Wordpress 2.91 dan belum dimodifikasi sama sekali.

  1. Apakah ini normal?
  2. Bagaimana saya bisa mengoptimalkan database saya agar semuanya berjalan dengan benar?

Apakah meja Anda dioptimalkan?
Richard Holloway

Jawaban:


5

Sudahkah Anda menemukan dokumentasi MySQL? Luas dan bermanfaat.

Ketika Anda menjalankan OPTIMIZE TABLEterhadap tabel InnoDB itu menampilkan Table does not support optimize, doing recreate + analyze insteadpesan.

Dari dokumentasi:

OPTIMIZE TABLE dipetakan ke ALTER TABLE, yang membangun kembali tabel untuk memperbarui statistik indeks dan membebaskan ruang yang tidak digunakan dalam indeks berkerumun.

MySQL 5.1 MENGOPTIMALKAN sintaks TABEL


1
Dengan mengingat hal ini, pastikan untuk mesin Anda sebelum mengaktifkan skip-innodbseperti yang saya sarankan di posting sebelumnya.
Warner

1
Lucu, saya berkali-kali mencari dukungan untuk topik ini dan tidak menemukan info itu ... Jadi, sebenarnya dokumentasi mySQL tidak terlalu berguna .... Meski begitu, saya masih tidak melihat jawaban untuk pertanyaan saya tentang bagaimana menjaga agar database saya berfungsi dengan benar tanpa dapat mengoptimalkan database ...
Dscoduc

2
Pesan tersebut menunjukkan bahwa adalah mengoptimalkan meja. Alasan mengapa begitu verbose adalah karena pada dasarnya itu adalah jalan pintas untuk pernyataan tabel alter, yang harus digunakan sebagai gantinya di versi MySQL sebelumnya karena OPTIMIZE TABLEtidak dapat dijalankan terhadap InnoDB. Mengapa Anda yakin perlu mengoptimalkan tabel agar database Anda beroperasi dengan benar?
Warner

5

Anda dapat mengoptimalkan tabel InnoDB dengan melakukan

ALTER TABLE tablename ENGINE='InnoDB';

Ini akan membuat salinan dari tabel asli drop tabel asli dan letakkan tabel baru di tempatnya.

Ada beberapa informasi tambahan di sini yang mencakup hal-hal yang harus Anda ketahui.

Juga di Dokumentasi MySQL . Lihat komentar oleh Dathan Pattishall pada 25 Mei 2004 4:41 sore sekitar setengah halaman.

Meskipun ini harus aman untuk dilakukan, Anda harus membuat dan menguji cadangan terlebih dahulu.


2
Ini menghasilkan hasil yang sama persis seperti menjalankan OPTIMIZE TABLEterhadap tabel InnoDB di MySQL.
Warner


2

MENGOPTIMALKAN bekerja untuk InnoDB. Setidaknya sekarang. Ini adalah dokumentasi 5.6:

Untuk tabel InnoDB, OPTIMIZE TABLE dipetakan ke ALTER TABLE, yang membangun kembali tabel untuk memperbarui statistik indeks dan membebaskan ruang yang tidak digunakan dalam indeks berkerumun.

Baca: Optimalkan Tabel

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.