全部产品
Search
文档中心

Managed Service for Prometheus:Gunakan Managed Service for Prometheus untuk memantau database MySQL

更新时间:Jul 02, 2025

Topik ini menjelaskan cara menggunakan Alibaba Cloud Managed Service for Prometheus untuk memantau database MySQL.

Prasyarat

Pastikan informasi berikut tersedia: alamat, nomor port, serta nama pengguna dan kata sandi yang digunakan untuk terhubung ke database MySQL.

Aktifkan komponen MySQL

  1. Di panel navigasi sebelah kiri, klik Integration Center.

  2. Pada halaman Integration Center, di bagian Database, klik MySQL.

    image

  3. Di tab Start Integration pada panel MySQL, atur parameter yang diperlukan, lalu klik OK. Instance Prometheus akan dibuat untuk memantau database.

    Parameter

    Deskripsi

    Select the environment type

    Pilih lingkungan tempat database diterapkan. Nilai valid:

    • Lingkungan Kubernetes

    • ECS (VPC)

    • Layanan Cloud

    Select Cluster

    Pilih kluster ACK tempat database diterapkan. Parameter ini tersedia jika database diterapkan dalam kluster Container Service for Kubernetes (ACK).

    Select VPC

    Pilih instance ECS tempat database diterapkan. Parameter ini tersedia jika database diterapkan dalam instance Elastic Compute Service (ECS).

    Select Region for Storage

    Parameter ini tersedia jika database diterapkan dalam ApsaraDB RDS.

    MySQL Address

    Alamat database MySQL.

    Catatan

    Database MySQL dapat diterapkan dalam kluster ACK, instance ECS, atau ApsaraDB RDS.

    MySQL Service Port

    Nomor port database MySQL. Contoh: 3306.

    MySQL Username dan MySQL Password

    Nama pengguna dan kata sandi database MySQL.

    Penting

    Untuk mencegah risiko pelanggaran data, kami menyarankan agar Anda tidak menggunakan akun administrator. Buat akun MySQL untuk mysqld_exporter dan berikan izin minimum kepada akun tersebut. Untuk informasi lebih lanjut, lihat Buat pengguna MySQL untuk Managed Service for Prometheus.

Konfigurasikan peringatan untuk database MySQL

  1. Masuk ke Konsol Managed Service for Prometheus.

  2. Di panel navigasi sebelah kiri, klik Instances.

  3. Di bilah navigasi atas, pilih wilayah, lalu klik nama instance Prometheus.

  4. Di panel navigasi sebelah kiri, klik Alert Rules untuk melihat aturan peringatan database.

    Managed Service for Prometheus menyediakan beberapa aturan peringatan default untuk metrik utama MySQL. Anda juga dapat membuat aturan peringatan sesuai dengan kebutuhan bisnis. Untuk informasi lebih lanjut, lihat Buat aturan peringatan untuk instance Prometheus.

    Catatan
    • Untuk informasi tentang metrik utama MySQL, lihat bagian Metrik Utama.

    • Untuk informasi lebih lanjut tentang aturan peringatan yang telah ditetapkan oleh Managed Service for Prometheus untuk metrik utama MySQL, lihat bagian Konfigurasikan peringatan untuk database.

Lihat dasbor

Anda dapat melihat data pemantauan di dasbor, seperti ketersediaan layanan, kueri database, lalu lintas jaringan, koneksi, dan penggunaan memori.

  1. Masuk ke Konsol Managed Service for Prometheus.

  2. Di panel navigasi sebelah kiri, klik Integration Management.

  3. Di tab Integrated Environments pada halaman Integration Management, klik nama lingkungan tempat database diterapkan.

    image

  4. Di bagian Addon Type pada tab Component Management, klik MySQL, lalu klik Dashboards untuk melihat semua dasbor.

  5. Klik nama dasbor.

    • Ketersediaan, permintaan per detik (QPS), dan koneksi databasesk

    • Kueri databaseaj

    • Trafik dan penggunaan memorixq

    • Data pemantauan fileqt

Metrik utama

Tipe

Metrik

Deskripsi

Ketersediaan

mysql_up

Menunjukkan apakah database MySQL tersedia.

mysql_global_status_uptime

Menunjukkan durasi operasi database MySQL. Anda dapat membuat aturan peringatan untuk metrik ini untuk memeriksa apakah durasi operasi kurang dari 30 menit.

Koneksi database

mysql_global_status_connection_errors_total

Menunjukkan kesalahan koneksi, salah satu kesalahan utama database. Anda dapat menggunakan metrik ini untuk melihat informasi tentang kesalahan tertentu dan jumlah kesalahan koneksi.

mysql_global_status_threads_connected

Menunjukkan jumlah thread tempat koneksi ke database MySQL dibuat.

mysql_global_status_threads_running

Menunjukkan jumlah thread tempat permintaan untuk terhubung ke database MySQL dikirim tetapi belum berhasil.

mysql_global_status_max_used_connections

Menunjukkan jumlah maksimum koneksi ke database MySQL.

mysql_global_variables_max_connections

Menunjukkan batas atas koneksi ke database MySQL. Saat jumlah koneksi mencapai batas atas, permintaan untuk membuat koneksi akan ditolak.

mysql_global_status_aborted_connects

Menunjukkan upaya koneksi yang gagal.

mysql_global_status_aborted_clients

Menunjukkan koneksi yang habis waktu tunggunya.

Kueri

mysql_global_status_slow_queries

Menunjukkan kueri lambat dari database MySQL.

mysql_global_status_queries

Menunjukkan QPS dari database MySQL.

Lalu lintas jaringan

mysql_global_status_bytes_received

Menunjukkan trafik arah masuk.

mysql_global_status_bytes_sent

Menunjukkan trafik arah keluar.

Data pemantauan file

mysql_global_status_opened_files

Menunjukkan file yang dibuka di database MySQL.

mysql_global_status_open_files

Menunjukkan file yang sedang dibuka.

mysql_global_variables_open_files_limit

Menunjukkan file yang dapat dibuka.

mysql_global_status_innodb_num_open_files

Menunjukkan file yang dibuka oleh InnoDB.

Konfigurasikan peringatan untuk database

Menggunakan sistem Prometheus yang dikelola sendiri untuk memantau database MySQL cukup kompleks karena memerlukan instalasi ekspor MySQL, konfigurasi penemuan layanan, dan pembuatan dasbor. Managed Service for Prometheus menyederhanakan proses ini dengan menyediakan ekspor MySQL bawaan, dasbor siap pakai, dan peringatan dalam antarmuka visual, sehingga mengurangi beban kerja.

Managed Service for Prometheus menyediakan aturan peringatan default untuk database MySQL guna membantu Anda membangun dasbor dan sistem peringatan secara efisien. Berikut adalah aturan peringatan yang telah ditetapkan:

  • Availability: Jika nilai metrik adalah 0, database MySQL tidak tersedia. Jika nilai metrik adalah 1, database MySQL berjalan sesuai harapan. Anda dapat mengganti variabel ${instance} dengan database MySQL yang ingin Anda pantau.

    mysql_up{${instance}} != 1
  • Slow queries: Gunakan metrik ini untuk mengidentifikasi pernyataan SQL yang dapat dioptimalkan di database.

    rate(mysql_global_status_slow_queries{${instance}}[5m]) > 0
  • Connection errors: Kesalahan koneksi merupakan salah satu masalah utama dalam database. Saat peringatan dipicu, Anda akan menerima notifikasi berisi detail kesalahan, termasuk jenis kesalahan dan QPS.

    rate(mysql_global_status_connection_errors_total{${instance}}[5m]) > 0
  • Connection usage: Sebagian besar kesalahan koneksi disebabkan oleh jumlah koneksi yang tidak mencukupi. Anda dapat menganalisis kesalahan koneksi berdasarkan metrik ini.

    100 * mysql_global_status_threads_connected{${instance}} 
          / mysql_global_variables_max_connections{${instance}} > 90

    Saat penggunaan koneksi mencapai batas atas, database MySQL menolak permintaan koneksi. Untuk menyelesaikan masalah ini, Anda dapat meningkatkan batas atas. Sebelum meningkatkan batas atas koneksi, jalankan perintah berikut untuk memeriksa batas atas file yang dapat dibuka.

    mysql_global_variables_open_files_limit - mysql_global_variables_innodb_open_files
  • InnoDB log wait time: Metrik ini membantu menentukan periode waktu selama mana penulisan log harus menunggu undo log untuk di-flush.

    rate(mysql_global_status_innodb_log_waits{${instance}}[5m])