Tabel ditandai sebagai macet dan harus diperbaiki

191

Saya mendapatkan kesalahan ini di wordpress phpMyadmin

#145 - Table './DB_NAME/wp_posts' is marked as crashed and should be repaired 

Ketika saya login ke phpMyadmin, dikatakan wp_posts "sedang digunakan"

Situs web saya sedang down karena ini.

Saya mencari masalah ini di Google, tetapi saya tidak melihat tombol "perbaikan" di phpMyadmin. Tolong beri tahu saya cara memperbaikinya. Saya tidak yakin ke mana harus mengeluarkan perintah PHP. Mohon saran, kemahiran saya dengan PHP sangat mendasar.

John Connor
sumber

Jawaban:

215

Di sinilah tombol perbaikan:

teks alternatif

Nican
sumber
183

Jalankan ini dari baris perintah server Anda:

 mysqlcheck --repair --all-databases
tylerl
sumber
45
Untuk menghindari kesalahan 'akses ditolak', Anda mungkin harus menambahkan nama pengguna dan kata sandi untuk perintah ini. mysqlcheck -uroot -p --repair --all-databasesdan berikan kata sandi.
wruckie
120

Saya memiliki masalah yang sama ketika ruang disk kosong server saya yang tersedia adalah 0

Anda dapat menggunakan perintah (harus ada ruang yang cukup untuk file mysql)

REPAIR TABLE `<table name>`;

untuk memperbaiki masing-masing tabel

Arun Killu
sumber
Bermanfaat, saya punya masalah dengan tabel UC Drupal v7.6x, yang tiba-tiba diputar; mengeluarkan perintah REPAIR TABLE seperti di atas di phpMyAdmin SQL console dan memperbaikinya. Syukurlah untuk stackoverflow !! Bersulang!
Paul B
25

Hubungkan ke server Anda melalui SSH

kemudian hubungkan ke konsol mysql Anda

dan

USE user_base
REPAIR TABLE TABLE;

-ATAU-

Jika ada banyak tabel rusak di database saat ini:

mysqlcheck -uUSER -pPASSWORD  --repair --extended user_base

Jika ada banyak tabel rusak di banyak basis data:

mysqlcheck -uUSER -pPASSWORD  --repair --extended -A
Nedudi
sumber
2
Jangan memasukkan kata sandi di baris perintah, kata sandi tersebut kemudian disimpan dalam riwayat dengan cara dan lokasi yang tidak diamankan. perintah mysql memungkinkan Anda melewatkan parameter itu -psendiri, dan kemudian akan meminta kata sandi Anda.
Thierry J.
7

Ketika saya mendapat kesalahan ini:

# 145 - Tabel '. \ Engine \ phpbb3_posts' ditandai sebagai macet dan harus diperbaiki

Saya menjalankan perintah ini di PhpMyAdmin untuk memperbaikinya:

REPAIR TABLE phpbb3_posts;
RasoolLotfi
sumber
6

Ini berarti tabel MySQL Anda rusak dan Anda harus memperbaikinya. Menggunakan

myisamchk -r /DB_NAME/wp_posts

dari baris perintah. Saat Anda menjalankan perbaikan, Anda harus mematikan situs web Anda sementara waktu sehingga tidak ada koneksi baru yang dicoba ke basis data Anda saat sedang diperbaiki.

Dmitri
sumber
Saya menanyakan ini pada komentar di atas, tetapi saya pikir dia sudah keluar, jadi saya minta lagi. "Terima kasih banyak, situs saya kembali online lagi. Namun, satu pertanyaan, ketika database rusak dan saya memperbaikinya lagi, haruskah saya khawatir tentang apa pun? Haruskah saya menyelidiki apakah itu membuat sesuatu yang lain rusak? Atau ini harus dijaga dari segalanya?"
John Connor
Anda tidak perlu khawatir tentang apa pun. Setelah database diperbaiki, situs Anda akan berfungsi kembali. Mungkin rusak lagi di beberapa titik, itu terjadi, hanya memperbaikinya lagi. Juga lakukan pencadangan secara teratur dan Anda akan baik
Dmitri