Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

EC2 Amazon Linux AMI MySQL CPU @ 62% Saat Menganggur?

Satu-satunya hal yang dapat saya pikirkan adalah memeriksa apa yang sebenarnya dilakukan mysqld menggunakan strace, sebagai root pengguna:

 strace -p 2959

Biasanya, strace akan segera memblokir dan menampilkan panggilan ke select(), karena mysqld harus menunggu koneksi.

Panggilan harus seperti:

 select(SOCKETNO, [OTHER_FDs], NULL, NULL, NULL)

yang sangat penting adalah parameter keempat, yang merupakan timeout timeval. Jika NULL, itu berarti mysqld akan tidur sampai seseorang terhubung. Jika tidak NULL, itu berarti mysqld akan menunggu waktu yang ditentukan dan kemudian melakukan beberapa pekerjaan pemeliharaan. Waktu yang sangat kecil mungkin menjelaskan konsumsi CPU.

Saya percaya bahwa MySQL selalu menggunakan batas waktu NULL (tak terbatas). Masuk akal dan beginilah perilaku mysqlds yang dapat saya jangkau sekarang.

Namun, mungkin ada beberapa masalah penanganan koneksi yang mencegah pilih tidur lagi. Periksa apakah perilaku ini muncul segera setelah mysqld dimulai, atau setelah seseorang terhubung.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konvensi penamaan MySQL, haruskah nama bidang menyertakan nama tabel?

  2. Fungsionalitas situs web terganggu atau diretas

  3. Mengekspor database MySQL dari XAMPP

  4. Gema baris tertentu dari database mysql

  5. MySQL EXPLAIN:Menggunakan indeks vs. Menggunakan kondisi indeks