Di server saya dengan konfigurasi Anda, kinerja dasar saya adalah sebagai berikut:
- InnoDB:5,71 detik
- MyISAM:2,50 detik
Ini tidak buruk dalam buku saya, tetapi dapat menggunakan beberapa penyesuaian.
Performa InnoDB Anda dapat ditingkatkan di beberapa bidang:
Meningkatkan innodb_buffer_pool_size
- Ini adalah satu-satunya variabel konfigurasi InnoDB yang paling penting. Idealnya harus 70-80% dari RAM Anda yang tersedia di server yang didedikasikan untuk MySQL dan InnoDB.
- Meningkatkan
innodb_buffer_pool_size
di server saya ke 2G (lebih dari cukup untuk pengujian ini) menurun waktu InnoDB menjadi 4,60 detik
Jadikan id sebagai PRIMARY KEY
- InnoDB mengelompokkan datanya berdasarkan PRIMARY KEY. Saat Anda tidak mendeklarasikannya, InnoDB menghasilkan yang acak secara implisit. Memiliki kunci utama berurutan (id) lebih cepat daripada kunci acak.
- Menjadikan id sebagai PRIMARY KEY di server saya dikurangi waktu InnoDB menjadi 3,80 detik
Tingkatkan MySQL/InnoDB Anda
Dengan MySQL 5.1+ MySQL mendukung mesin penyimpanan yang dapat dicolokkan. Khususnya Plugin InnoDB yang baru .
Mesin InnoDB baru menyediakan banyak peningkatan kinerja yang mungkin memiliki pengaruh yang signifikan pada jenis kueri tertentu ini.
Catatan:
- Pada MySQL 5.1.38, Plugin InnoDB disertakan dalam MySQL
- Pada MySQL 5.1.43, Plugin InnoDB tidak hanya disertakan, tetapi merupakan mesin default untuk MySQL