Instalasi CentOS baru.
Saya menjalankan impor DB besar (file 2GB sql) dan punya masalah. Klien SSH tampaknya kehilangan koneksi dan impor tampaknya membeku. Saya menggunakan jendela lain untuk login ke mysql dan impor tampaknya sudah mati, terjebak pada tabel baris 3M tertentu.
Jadi saya mencoba
DROP DATABASE huge_db;
15-20 menit kemudian, tidak ada apa-apa. Di jendela lain, saya melakukannya:
/etc/init.d/mysqld restart
Jendela DROP DB mengirim pesan: SERVER SHUTDOWN. Kemudian saya benar-benar me-restart server fisik.
Masuk kembali ke mysql, diperiksa dan db masih di sana, berlari
DROP DATABASE huge_db;
lagi, dan lagi saya sudah menunggu sekitar 5 menit.
Sekali lagi, ini instalasi baru. Ini huge_db
adalah satu-satunya db (selain sistem dbs). Aku bersumpah aku sudah menjatuhkan db sebesar ini sebelumnya dan dengan cepat, tapi mungkin aku salah.
Saya telah berhasil menjatuhkan basis data. Butuh sekitar 30 menit. Perhatikan juga bahwa saya pikir saya salah ketika saya pikir impor mysqldump sudah mati. Koneksi terminal terputus, tapi saya pikir prosesnya masih berjalan. Saya kemungkinan besar membunuh impor mid-table (tabel baris 3M) dan mungkin 3/4 dari keseluruhan db. Itu menyesatkan bahwa "atas" menunjukkan mysql menggunakan hanya 3% dari memori, ketika sepertinya itu harus menggunakan lebih banyak.
Menjatuhkan DB akhirnya memakan waktu 30 menit, jadi, sekali lagi, saya mungkin tidak perlu me-restart server dan mungkin bisa saja menunggu DROP selesai, tapi saya tidak tahu bagaimana reaksi mysql untuk mendapatkan permintaan DROP untuk db yang sama yang diimpor melalui mysqldump.
Namun, pertanyaannya tetap, mengapa butuh 30 menit + untuk MENGHAPUS database 2GB padahal yang harus dilakukan adalah menghapus semua file db dan menghapus semua referensi ke DB dari information_schema? Apa masalahnya?
DROP DATABASE
perintah, server tidak akan melanjutkan sampai semua koneksi telah ditutup.