Tidak sedikit user yang menggunakan database mysql untuk server database di instansinya masing-masing, dengan kemampuan database mysql yang tergolong diatas rata-rata walaupun mysql tersebut merupakan database yang open source, bila kita bisa mengoptimalkan hasilnya akan lebih powerfull delam kita menggunakan database mysql. Saya akan sedikit share tentang pengalaman saya menggunakan database Mysql agar bisa melakukan optimasi database mysql kita.
Cara optimasi ini yang kita lakukan
adalah kita menyesuaikan kemampuan database mysql kita dengan resource
komputer server yang kita gunakan untuk server database kita, jadi kita
tidak bisa memaksakan dengan konfigurasi mysql yang maksimal dengan
resource yang tidak sesuai. Cara yang saya lakukan dalam mengoptimasi
mysql database saya yaitu menggunakan mysql tuner. Para DBA yang
menggunakan mysql sering menggunakan salah satu cara ini untuk melakukan
optimasi terhadap databasenya.
- Yang pertama kita lakukan adalah download file mysqltuner.pl terlebih dahulu, bisa juga menggunakan perintah command line
wget mysqltuner.pl
- Path terlebih dahulu menggunakan perintah
PATH=$PATH:/usr/local/mysql/bin
- Jalankan mysqltuner dengan perintah
./mysqltuner.pl
- Hasil dari menjalankan mysqltuner
- Dari hasil tersebut kita bisa melihat mana konfigurasi yang perlu dioptimalkan, yang statusnya berwarna merah adalah yang perlu diperhatikan.
- Kemudian edit konfigurasi file
dengan perintah dicommand line/etc/my.cnf
nano /etc/my.cnf
- Kita bisa tambahkan konfigurasi seperti ini
# The MySQL server
[mysqld]
port = 3306
socket = /tmp/mysql.sock
#skip-locking
key_buffer = 1024M
max_allowed_packet = 1M
table_cache = 2000
#sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
skip-name-resolve
thread_cache_size=64
table_cache=1024
local-infile=0
innodb_file_per_table=1
query_cache_limit=1M
max_connections=500
key_buffer_size=1024M
join_buffer_size=256M
query_cache_type=1
query_cache_size=64M
max_tmp_tables=1
tmp_table_size=64M
max_heap_table_size=64M
default-storage-engine=MyISAM
log-slow-queries=/var/lib/mysql/slow.log
open_files_limit=2324
innodb_buffer_pool_size=2G
8. Setelah konfigurasi semua selesai, restart service mysql dan kembali jalankan perintah./mysqltuner.pl
lihat hasilnya ada perbedaan atau tidak, biasanya perubahan konfigurasi akan kelihatan dihari berikutnya.source: http://www.infokah.com/cara-optimasi-mysql/