Memantau aktivitas MySQL per basis data?

9

Apa cara terbaik untuk memantau aktivitas di setiap basis data server saya?

Saya mencoba mtop / mytop yang menampilkan aktivitas secara real time tetapi tidak terlalu praktis untuk melihat semua query dieksekusi di atasnya.

Saya mengaktifkan log MySQL tetapi tidak ada opsi untuk membaginya per database.

Alat apa yang Anda gunakan untuk memonitor server MySQL?

tostinni
sumber

Jawaban:

4

Saya mencoba untuk menjauh dari memiliki banyak basis data dalam satu contoh. Alih-alih, saya memiliki beberapa instance yang diatur pada server di mana masing-masing didedikasikan untuk database.

Templat MySQL Cacti adalah solusi pemantauan yang baik. Jika Anda pelanggan perusahaan maka MySQL Enterprise Monitor berfungsi. Lihat juga mycheckpoint dari openark.

EDIT
Berikut adalah beberapa tutorial untuk mengatur beberapa instance pada satu server:

Anda juga dapat menggunakan MySQL Sandbox karena mengotomatiskan banyak pengaturan berbeda untuk Anda.

dabest1
sumber
Terima kasih atas komentar Anda, apakah Anda memiliki tutorial cepat untuk mengatur beberapa instance per server?
tostinni
3

Anda harus memahami dari mana sebagian besar alat yang Anda gunakan mendapatkan datanya - SHOW ENGINE INNODB STATUSdan SHOW GLOBAL STATUS. Data ini tidak tersedia dipecah pada tingkat database di dalam MySQL.

MySQL 5.5, 5.6 dan Percona Server telah melakukan pekerjaan yang baik untuk meningkatkan diagnosa yang tersedia untuk Anda dengan fitur seperti performance_schema dan userstats - tetapi saya tidak tahu adanya alat GUI / pemantauan yang mengambil keuntungan.

Saya sarankan menginstal Percona Server, dan lihat table_statistics:

mysql> SELECT * FROM INFORMATION_SCHEMA.TABLE_STATISTICS
   WHERE TABLE_NAME='tables_priv';
+--------------+-------------------------------+-----------+--------------+------------------------+
| TABLE_SCHEMA | TABLE_NAME                    | ROWS_READ | ROWS_CHANGED | ROWS_CHANGED_X_INDEXES |
+--------------+-------------------------------+-----------+--------------+------------------------+
| mysql        | tables_priv                   |         2 |            0 |                      0 | 
+--------------+-------------------------------+-----------+--------------+------------------------+
Morgan Tocker
sumber