Tips Improvement Performance MySQL Server Secara Mudah

Setelah proses instalasi, langkah berikutnya untuk melakukan setup MySQL Server yang handal adalah dengan melakukan proses tuning terhadap konfigurasi MySQL. Berikut adalah beberapa hal yang bisa dilakukan untuk meningkatkan kehandalannya

3.1 Check Standar Keamanan

Untuk mengecek kehandalan sistem MySQL Server yang baru diinstall, cukup dengan melakukan perintah :

mysql_secure_installation

Setelah dijalankan, MySQL akan melakukan pengecekan terhadap konifgurasi default. Ikuti petunjuk yang diberikan untuk memperbaiki standar konfigurasi yang ada.

linux:/srv # mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL

SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MySQL to secure it, we’ll need the current

password for the root user. If you’ve just installed MySQL, and

you haven’t set the root password yet, the password will be blank,

so you should just press enter here.

Enter current password for root (enter for none):

OK, successfully used password, moving on…

Setting the root password ensures that nobody can log into the MySQL

root user without the proper authorisation.

Set root password? [Y/n] y

New password:

Re-enter new password:

Password updated successfully!

Reloading privilege tables..

… Success!

By default, a MySQL installation has an anonymous user, allowing anyone

to log into MySQL without having to have a user account created for

them. This is intended only for testing, and to make the installation

go a bit smoother. You should remove them before moving into a

production environment.

Remove anonymous users? [Y/n]

Setelah selesai dicheck, restart ulang service MySQL.

3.2 Menggunakan Konfigurasi yang Tepat

MySQL secara default menggunakan konfigurasi moderate, dalam arti bahwa konfigurasi yang yang diberikan merupakan konifgurasi yang menyesuaikan dengan sistem server secara umum. Ada penyesuaian antara performa dengan stabilitas. Tidak diset performa tinggi agar tidak mempengaruhi stabilitas sistem.mysql-performance-tuning

Kita bisa dengan mudah melakukan ujicoba tuning sistem dengan cara membackup file konfigurasi standard dan kemudian mengubah beberapa opsi/parameter yang tersedia.

Untuk parameter yang ditune up, tidak perlu dihapalkan satu persatu, karena MySQL sudah menyediakannya pada folder /usr/share/mysql. Pada folder tersebut ada nama file konfigurasi : my-small.cnf, my-medium.cnf, my-large.cnf dan my-huge.cnf.

Salin atau modifikasi file asli /etc/my.cnf yang sudah dibackup dan membandingkannya dengan file konfigurasi yang diinginkan diatas.

3.3 Menggunakan MySQLTuner

Ada juga cara termudah untuk memastikan bahwa MySQL Server yang kita install sudah dikonfigurasi dengan baik, yaitu dengan menggunakan script mysqltuner. Script ini dibuat dengan bahasa Perl dan akan melakukan pengecekan terhadap konfigurasi database MySQL yang kita miliki. Jangan lupa untuk membackup file konfigurasi yang ada sebelum menjalankannya.

Berikut adalah cara menggunakan MySQLTuner :

wget mysqltuner.pl –no-check-certificate

chmod +x mysqltuner.pl

./mysqltuner.pl

Contoh tampilan script saat dijalankan :

# ./mysqltuner.pl

>> MySQLTuner 1.2.0 – Major Hayden <major@mhtx.net>

>> Bug reports, feature requests, and downloads at http://mysqltuner.com/

>> Run with β€˜β€“help’ for additional options and output filtering

Please enter your MySQL administrative login: root

Please enter your MySQL administrative password:

——– General Statistics ————————————————–

[–] Skipped version check for MySQLTuner script

[OK] Currently running supported MySQL version 5.0.95

[OK] Operating on 64-bit architecture

——– Storage Engine Statistics β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”-

[–] Status: -Archive -BDB -Federated +InnoDB -ISAM -NDBCluster

[!!] InnoDB is enabled but isn’t being used

[OK] Total fragmented tables: 0

——– Security Recommendations β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”-

[OK] All database users have passwords assigned

——– Performance Metrics β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”-

[–] Up for: 2h 33m 25s (59 q [0.006 qps], 25 conn, TX: 23K, RX: 3K)

[–] Reads / Writes: 86% / 14%

[–] Total buffers: 42.0M global + 1.9M per thread (100 max threads)

[OK] Maximum possible memory usage: 229.5M (11% of installed RAM)

[OK] Slow queries: 0% (0/59)

[OK] Highest usage of available connections: 1% (1/100)

[OK] Key buffer size / total MyISAM indexes: 16.0M/21.0K

[!!] Key buffer hit rate: 66.7% (12 cached / 4 reads)

[!!] Query cache is disabled

[OK] Sorts requiring temporary tables: 0% (0 temp sorts / 1 sorts)

[OK] Temporary tables created on disk: 0% (0 on disk / 8 total)

[!!] Thread cache is disabled

[OK] Table cache hit rate: 73% (17 open / 23 opened)

[OK] Open file limit used: 3% (34/1K)

[OK] Table locks acquired immediately: 100% (30 immediate / 30 locks)

[!!] Connections aborted: 8%

——– Recommendations —————————————————–

General recommendations:

Add skip-innodb to MySQL configuration to disable InnoDB

MySQL started within last 24 hours – recommendations may be inaccurate

Enable the slow query log to troubleshoot bad queries

Set thread_cache_size to 4 as a starting value

Your applications are not closing MySQL connections properly

Variables to adjust:

query_cache_size (>= 8M)

thread_cache_size (start at 4)

Beberapa tips diatas bisa dengan mudah dijalankan sehingga MySQL Server yang baru disetup bisa berjalan dengan baik, tidak dibiarkan demikian adanya :-)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.