Log sangat berharga. Log yang dihasilkan oleh sumber daya backend utama yang memberi klien akses ke data penting lebih dari sekadar berharga;
MySQL Server menghasilkan beberapa log dasar. Kami akan melihat mana yang penting (dan mengapa), di mana mereka berada, dan apa yang dapat Anda lakukan untuk mendapatkan hasil maksimal dari mereka
Log MySQL
Tiga log terpenting dalam hal operasi TI sehari-hari adalah log kesalahan, log kueri yang lambat, dan (pada tingkat yang lebih rendah) log kueri umum. Format defaultnya adalah teks, dan berguna untuk mendeteksi dan mendiagnosis masalah fungsional dan masalah keamanan, untuk meningkatkan kinerja, dan untuk melacak riwayat operasi server dan akses klien ke server
Log biner, relai, dan DDL semuanya dalam format biner, dan dirancang untuk digunakan terutama oleh MySQL sendiri, khususnya untuk tugas-tugas seperti replikasi server dan pemulihan data
Pertanyaan tentang Bagaimana dan Dimana dengan File Log MySQL
Pertama, mari kita lihat sekilas bagaimana dan dalam keadaan apa berbagai distribusi MySQL menetapkan lokasi file log default
Ada tiga tipe dasar distribusi MySQL. Windows, UNIX/Linux khusus platform, dan UNIX/Linux generik. Secara umum, distribusi khusus platform memiliki pengaturan default untuk menempatkan dan mengaktifkan log, sedangkan distribusi UNIX/Linux umum menganggap bahwa log akan dikelola melalui pengaturan manual.
Windows
Distribusi resmi MySQL Windows menggunakan penginstal MSI dengan opsi yang dapat dipilih pengguna pada berbagai tahap penginstalan. Halaman Opsi Logging menampilkan pengaktifan log dan default lokasi dan juga memungkinkan Anda melakukan penyesuaian sesuai kebutuhan
Galat, kueri lambat, dan log biner diaktifkan secara default, tetapi log kueri umum tidak diaktifkan. Lokasi default untuk setiap log adalah direktori Data MySQL (C. \ProgramData\MySQL\MySQL Server [nomor versi]\Data\), dan nama log default didasarkan pada nama perangkat komputer
Anda dapat mengaktifkan/menonaktifkan kueri umum, kueri lambat, dan log biner secara manual melalui GUI penginstal, tetapi bukan log kesalahan. Anda juga dapat mengatur nama dan jalur secara manual untuk setiap log
Setelah penginstalan, pengaturan log dikelola melalui C. yang dapat diedit pengguna. \ProgramData\MySQL\MySQL Server [nomor versi]\my. file ini. Pengaturan ini mencakup nama dan jalur log serta aktifkan/nonaktifkan sakelar
Untuk informasi lebih lanjut tentang mengumpulkan log Microsoft MySQL, lihat halaman khusus kami untuk mengumpulkan dan memahami Log MySQL di windows
UNIX/Linux Khusus Platform
Distribusi resmi untuk masing-masing platform UNIX/Linux biasanya berbasis skrip, dengan sedikit atau tanpa konfigurasi interaktif selama instalasi. Beberapa paket instalasi (termasuk Yum dan APT) membuat log kesalahan di /var/log/ atau var/log/mysql/ dengan nama seperti error. log atau mysqld.log. catatan. Direktori data biasanya adalah /var/lib/mysql/ atau yang serupa, dan ini akan berfungsi sebagai tujuan default untuk setiap log yang diaktifkan tanpa jalur alternatif
Pengaturan log dikelola melalui file konfigurasi yang dapat diedit pengguna seperti /etc/mysql/mysql. conf. d/mysqld. cnf. Pengaturan ini mencakup nama dan jalur log serta aktifkan/nonaktifkan sakelar. Startup dan shutdown biasanya dikelola oleh mysqld_safe (atau dengan beberapa distribusi, systemd), yang harus menemukan dan menerapkan opsi konfigurasi log
UNIX/Linux umum
Instalasi generik sebagian besar manual. Selama proses penginstalan, Anda dapat mengaktifkan dan mengonfigurasi log melalui baris perintah, dengan menjalankan skrip, atau dengan mengedit file konfigurasi yang sesuai. Manual referensi online MySQL (https. //dev. mysql. com/doc/refman/5. 7/en/server-log. html) mencakup opsi ini secara detail
Log Kesalahan MySQL
Log kesalahan mencakup pesan kesalahan, peringatan, dan catatan yang dihasilkan selama operasi server serta selama fase startup dan shutdown;
Format log kesalahan dasar adalah
timestamp thread ID [error type] [error code] [MySQL subsystem] Error message text Error types include System, Warning, Note, and ERROR. Typical log entries might look like this: 2020-05-24T11:55:27.611014Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.20) starting as process 36070 2020-05-24T12:14:51.002836Z 2 [Note] [MY-010051] [Server] Event Scheduler: scheduler thread started with id 2 2020-05-24T12:41:45.059924Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed. 2020-05-24T12:41:45.086628Z 0 [ERROR] [MY-011825] [InnoDB] Failed to delete file ./#innodb_temp/temp_7.ibtPencatatan kesalahan selalu diaktifkan, dan opsi yang tersedia memungkinkan Anda menyetel tujuan, tingkat verbositas, dan zona waktu
Kemungkinan tujuan log kesalahan adalah file atau konsol. Di Windows, jika tidak ada opsi tujuan yang ditentukan, log kesalahan ditulis ke host_name. err (di mana host_name adalah nama sistem host) di direktori data. Pada sistem UNIX/Linux, tujuan default ketika tidak ada opsi yang ditentukan adalah konsol
Untuk instalasi MySQL berbasis UNIX/Linux dan Windows, opsi --log-error dengan sendirinya (tanpa nama file atau jalur) mengirimkan log kesalahan ke host_name. err di direktori Data. Jika Anda menentukan nama dan jalur (mis. e. , --log-error="G. /TMP/mysql_logs/mysql_error. err" atau --log-error=/var/log/mysql/error. log), log kesalahan akan ditulis ke file yang ditentukan. Untuk mengirim log kesalahan ke konsol di Windows, Anda harus menggunakan opsi --console;
Untuk informasi lebih lanjut mengenai log kesalahan dan mengumpulkannya, lihat halaman kami di Mengumpulkan log di MySQL
Log Kueri Umum dan Lambat
Kueri umum dan kueri lambat mencatat kueri pengguna menggunakan format serupa. Waktu, ID, Perintah, dan Argumen (di mana Argumen menyertakan perintah SQL dan data yang menyusun kueri)
Log kueri umum, bagaimanapun, merekam semua pernyataan SQL klien bersama dengan waktu koneksi dan pemutusan, sedangkan log kueri lambat hanya merekam kueri yang membutuhkan waktu lebih lama dari waktu yang ditentukan oleh variabel sistem waktu kueri lama. Log kueri yang lambat juga menyertakan kumpulan bidang yang berisi waktu eksekusi, waktu kunci, baris yang dikirim, dan baris yang diperiksa untuk setiap kueri yang dicatat
Entri log kueri umum umum mungkin terlihat seperti ini
2020-05-26T08:01:39.429740Z 17 Query INSERT INTO rental VALUES (1,'2005-05-24 22:53:30…_Entri log kueri yang lambat untuk peristiwa yang sama mungkin terlihat seperti ini
# Time: 2020-05-26T08:01:50.095050Z # User@Host: root[root] @ localhost [::1] Id: 17 # Query_time: 10.699002 Lock_time: 0.037315 Rows_sent: 0 Rows_examined: 0 use sakila; SET timestamp=1590480099; INSERT INTO rental VALUES (1,'2005-05-24 22:53:30…Log kueri yang lambat memungkinkan Anda mengidentifikasi kueri yang membutuhkan waktu yang sangat lama untuk dieksekusi; . Log kueri umum memungkinkan Anda untuk melacak semua pernyataan SQL klien, yang dapat berguna baik untuk melacak kesalahan maupun untuk mengidentifikasi potensi masalah keamanan
Log kueri cenderung mengakumulasi data dengan cepat, yang dapat memengaruhi kinerja sistem selain menghabiskan ruang disk. Log kueri umum khususnya dapat tumbuh dengan sangat cepat; . (Namun, penginstal Windows MySQL merupakan pengecualian, seperti dijelaskan di atas. )
Kueri umum dan log kueri lambat diaktifkan secara terpisah, menggunakan opsi --general-log dan --slow-query-log. Tujuan default adalah direktori data, dengan (nama host]. log dan [nama host]-lambat. log sebagai nama file. Untuk menyetel nama dan jalur log, gunakan opsi --general-log-file dan --slow-log-file
Format kedua log dikontrol oleh satu opsi, --log-output, yang mengambil nilai berikut. FILE, TABEL, atau TIDAK ADA. FILE adalah nilai default. TABLE menyimpan kedua log sebagai tabel, yang dapat dibaca dan dikelola melalui kueri SQL. Baik FILE dan TABLE dapat digunakan bersamaan, dipisahkan dengan koma. NONE menonaktifkan output dari kedua log;
Log Biner, Relai, dan DDL
Log biner dan relai diperlukan untuk replikasi server, dan log DDL digunakan oleh sistem untuk mengelola metadata selama operasi mysqld. Log ini umumnya digunakan diagnostik terbatas, meskipun Anda mungkin perlu mengakses log biner dan relai menggunakan utilitas mysqlbinlog sebagai bagian dari proses pemulihan data
Menyederhanakan lokasi File Log MySQL dengan Sumo Logic
Faktanya, bahkan dengan jumlah log server yang relatif kecil, MySQL dapat menghasilkan banyak data log. Pada saat yang sama, elemen data tersebut mungkin penting dalam hal pelacakan kesalahan, performa, dan keamanan. Apa cara terbaik untuk mengatur dan menyortir data log server MySQL untuk menemukan hal-hal yang perlu Anda ketahui?
Aplikasi Logika Sumo untuk MYSQL secara otomatis memilih metrik utama dan item data dari kesalahan dan log kueri yang lambat dan menyajikannya di dasbor yang mudah dibaca. Sumo Logic memudahkan untuk mengidentifikasi masalah kinerja, pola perilaku dan aktivitas yang tidak biasa, dan kesalahan kritis. Anda dapat memeriksa kesehatan sistem, status replikasi, dan kinerja server secara sekilas, menelusuri informasi real-time mendetail tentang kueri yang lambat (termasuk asal menurut masing-masing host, IP, dan pengguna), gagal masuk (berdasarkan pengguna, host, dan lokasi
Jangan menghabiskan waktu berjam-jam menggali file log - biarkan Sumo Logic melakukan pekerjaan untuk Anda sehingga Anda memiliki waktu untuk turun ke bisnis melayani pelanggan Anda
Visibilitas lengkap untuk DevSecOps
Kurangi waktu henti dan beralih dari pemantauan reaktif ke pemantauan proaktif
Mulai uji coba gratis
Silakan periksa kotak masuk Anda
Untuk mulai menggunakan Sumo Logic, silakan klik tautan aktivasi di email yang dikirim dari kami. Kami mengirim email ke
email@domain. comemail@domain. comemail@domain. com
Mulai uji coba gratis Anda hari ini
Tidak diperlukan kartu kredit. Aktif dan berjalan dalam hitungan menit
Email bisnis Masukkan email yang valid
Wilayah penyebaran
Rencana
Saya menyetujui Perjanjian Lisensi Layanan. Harap setujui Perjanjian Lisensi Layanan
Ya, saya ingin ikut serta dalam komunikasi Sumo Logic
Memuat formulirSudah memiliki akun?
Syarat & Ketentuan Pernyataan Privasi
Anda berada di perusahaan yang baik
Lebih dari 2.100 perusahaan di seluruh dunia mengandalkan Sumo Logic untuk membangun, menjalankan, dan mengamankan aplikasi modern dan infrastruktur cloud mereka