Prosesor MySQL dan Multi-Core

8

Saya menjalankan MySQL pada server win2008 pada prosesor xeon multi-core. Sepertinya hanya menggunakan satu inti.

Apakah ada sesuatu yang perlu saya konfigurasi untuk membuatnya menggunakan semua core?

Server mendukung situs web yang dimuat dengan banyak panggilan. Saya yakin ada lebih dari satu panggilan pada saat yang sama, tetapi DB terlihat menangani apa pun dalam satu inti.

Apa yang bisa saya lakukan untuk memperbaikinya?

Dani
sumber
Sudahkah Anda memeriksa pengaturan afinitas proses di task manager?
gekkz
Apa versi mysql yang Anda gunakan ???
RolandoMySQLDBA
MySQL 5.0 & 5.1 multithreaded , tetapi saya juga memperhatikan bahwa beberapa fungsi (seperti Replication) akan menggunakan 100% dari satu CPU pada mesin multiprocessor / multicore sementara core lainnya duduk diam.
Stefan Lasiewski

Jawaban:

7

Jika Anda ingin dapat menyetel MySQL untuk menggunakan banyak core, Anda perlu meningkatkan ke MySQL 5.5.

Menurut Whitepaper MySQL "Apa yang Baru di Kinerja dan skalabilitas MySQL 5.5" dari Desember 2010:

Kontrol Background I / O Thread - Pengguna sekarang memiliki dua parameter konfigurasi baru untuk semua platform, innodb_read_io_threads dan innodb_write_io_threads yang memungkinkan pengaturan jumlah utas latar belakang yang digunakan untuk membaca dan menulis permintaan. Ini membantu pengguna menyetel dan menskalakan aplikasi MySQL mereka pada sistem multi-core high-end 􀁸 Kontrol Tingkat Master I / O Thread - Pengguna sekarang dapat mengonfigurasi kapasitas I / O secara keseluruhan

Parameter yang disebutkan adalah innodb_read_io_threads dan innodb_write_io_threads .

Pengaturan ini tidak ada sebelum MySQL 5.1.38. Bahkan, hanya Plugin MySQL yang memungkinkan pengaturan ini di MySQL 5.1. Ini termasuk dalam InnoDB asli MySQL 5.5.

Mungkin Posting Blog ini dengan memberi Anda lebih banyak wawasan tentang Skalabilitas InnoDB untuk Server Inti Ganda .

RolandoMySQLDBA
sumber
Ini 5,5, saya akan memeriksa parameter ini, dan menyetujui.
Dani