Seperti yang Anda ketahui bahwa blog ini berjalan di WordPress dan di bawah kap WordPress ada database MySQL. Database MySQL cukup bagus dan mampu menampung trafik besar-besaran yang diterima blog ini setiap hari. Namun, sama seperti database lainnya, MySQL membutuhkan penyetelan serta manajemen yang tepat. Dalam posting blog ini kita akan membahas tentang bagaimana saya menerima kesalahan yang sangat aneh WordPress Database Error dan bagaimana saya mengatasinya.
Minggu lalu, tiba-tiba saya mendapat telepon dari seorang teman bahwa loading blog kami sangat lambat. Nah, ketika posting blog baru diterbitkan atau buletin dikirim, sangat umum untuk melihat lonjakan lalu lintas dan kelambatan sesaat dalam kinerja situs web. Namun, dalam kasus ini, situs web selalu berjalan lambat. Setelah beberapa saat kami menemukan beberapa masalah baru di situs. Karena kinerja yang lambat, kami juga menemukan bahwa penjadwal WordPress tidak memublikasikan entri blog baru serta tidak melakukan pencadangan sistem secara rutin.
Setelah diagnostik yang cermat, saya menemukan bahwa masalahnya ada pada Database MySQL. Ketika saya memeriksa log kesalahan, saya menemukan kesalahan berikut di log.
[Jumat 09 Sep 04:58:03 2016] [error] [client] WordPress database error Entri duplikat '3354142' untuk kunci 'PRIMARY' untuk kueri INSERT INTO wp_options (option_name , option_value,autoload) NILAI (…)
Sangat jelas bahwa ada pelanggaran kunci utama di tabel opsi. Namun, masalahnya tidak mudah diselesaikan karena saya pribadi tidak melakukan transaksi apa pun dengan tabel ini atau tidak ada pembaruan baru atau perubahan plugin baru-baru ini. Upaya pertama saya adalah memulihkan tabel khusus ini dari cadangan basis data lama (saya sering mencadangkan situs saya dan basis datanya). Bahkan masalah khusus ini gagal dan saya tidak dapat menghilangkan kesalahan tersebut.
Akhirnya, saya mencari di internet tetapi sayangnya, tidak ada bantuan nyata. Saat itu, saya memutuskan untuk melakukan berbagai trial and error. Percayalah, saya menghabiskan lebih dari 4 jam dan berbagai trik untuk menghilangkan kesalahan ini. Sangat jelas bagi saya bahwa itu adalah kesalahan integritas logis pada database, saya harus menghabiskan waktu dengan banyak tabel dan logika. Nah, setelah 4 jam, saya akhirnya menemukan solusi dan itu adalah solusi yang sangat sederhana. Saya berharap saya mengetahui hal ini lebih awal dan tidak akan menghabiskan lebih dari 4 jam untuk berbagai percobaan dan kesalahan.
Solusi / Perbaikan:
Saya baru saja menjalankan perintah berikut ini masalah saya telah teratasi.
REPAIR TABLE wp_options
Itu dia! Itu selesai.
Kenyataannya adalah tabel saya rusak dan karena alasan yang sama saya mendapatkan kesalahan terkait dengan Duplicate Key untuk tabel database saya. Setelah saya memperbaiki kerusakan tabel, semuanya bekerja dengan baik. Ingat, dalam kasus saya adalah tabel wp_options yang rusak, Anda harus menggantinya dengan nama tabel Anda dan skrip akan berfungsi dengan baik.
Selain itu, jika Anda hanya ingin memperbaiki semua tabel di database Anda, Anda dapat menjalankan skrip berikut dan skrip ini akan menghasilkan skrip untuk setiap tabel di database MySQL Anda. Setelah Anda menjalankan skrip, Anda akan memperbaiki setiap tabel database Anda.
SELECT CONCAT('repair table ', table_name, ';') FROM information_schema.tables WHERE table_schema='YourDatabaseName';
Saya harap postingan blog ini bermanfaat bagi Anda. Jika Anda pernah memiliki masalah dengan database WordPress MySQL, hubungi saya, saya akan dengan senang hati membantu Anda mengatasi kesalahan yang terkait dengan hal yang sama.