Rumah  >  Artikel  >  pangkalan data  >  Pengurusan log MySQL (perkongsian ringkasan)

Pengurusan log MySQL (perkongsian ringkasan)

WBOY
WBOYke hadapan
2022-06-23 12:26:012372semak imbas

Artikel ini membawakan anda pengetahuan yang berkaitan tentang mysql Ia terutamanya mengatur isu yang berkaitan dengan pengurusan log, termasuk log ralat, log pertanyaan umum, log binari, dsb. Berikut ialah Mari kita lihat, harap ia. membantu semua orang.

Pengurusan log MySQL (perkongsian ringkasan)

Pembelajaran yang disyorkan: tutorial video mysql

Log MySQL disimpan dalam direktori storan fail pangkalan data secara lalai (biasanya / usr/ local/mysql/data/). Anda juga boleh mengubah suai fail konfigurasi untuk menyesuaikan lokasi storan fail log.

Semasa saya menyusun dan memasang, direktori storan fail pangkalan data telah ditetapkan kepada /home/mysql.

1. Pengenalan kepada empat jenis log

1.1 Log ralat

Log ralat digunakan untuk merekod maklumat ralat yang berlaku apabila MySQL bermula, berhenti atau berjalan didayakan secara lalai.

vim /etc/my.cnf

[mysqld]

log-error=/home/mysql/mysql_error.log #Nyatakan lokasi storan log

1.2 Log pertanyaan umum

Log pertanyaan umum digunakan untuk merekod semua sambungan dan pernyataan MySQL Ia ditutup secara lalai.

vim /etc/my.cnf
 
 [mysqld]
 general_log=ON
 general_log_file=/home/mysql/mysql_general.log

1.3 Log binari

Log binari (binlog) digunakan untuk merekodkan semua pernyataan yang telah mengemas kini data atau berpotensi mengemas kini data Ia merekodkan perubahan data dan boleh digunakan untuk pemulihan data. , didayakan secara lalai.

vim /etc/my.cnf
 
 [mysqld]
 log-bin=mysql-bin      #也可以log_bin=mysql-bin
 #使用相对路径,则文件存储在默认目录/usr/local/mysql/data/中

1.4 Log pertanyaan perlahan

Log pertanyaan perlahan digunakan untuk merekod semua pernyataan yang masa pelaksanaannya melebihi saat_permintaan_panjang Anda boleh mencari pernyataan pertanyaan yang mengambil masa yang lama untuk dilaksanakan untuk pengoptimuman. Lalai ditutup.

 vim /etc/my.cnf
 
 [mysqld]
 slow_query_log=ON
 slow_query_log_file=/home/mysql/mysql_slow_query.log 
 long_query_time=5    #慢查询时间,设置超过5秒执行的语句被记录,缺省时为10秒

2. Konfigurasikan empat jenis log:

Langkah 1: Ubah suai fail konfigurasi /etc/my.cnf

vim /etc/my.cnf
 
 [mysqld]
 ##错误日志,用来记录当MySQL启动、停止或运行时发生的错误信息,默认已开启
 log-error=/home/mysql/mysql_error.log
 
 
 ##通用查询日志,用来记录MySQL的所有连接和语句,默认是关闭的
 general_log=ON
 general_log_file=/home/mysql/mysql_general.log
 
 
 ##二进制日志(binlog),用来记录所有更新了数据或者已经潜在更新了数据的语句,记录了数据的更改,可用于数据恢复,默认已开启
 log-bin=mysql-bin      #也可以log_bin=mysql-bin
 #使用相对路径,则文件存储在默认目录/home/mysql/中
 
 
 ##慢查询日志,用来记录所有执行时间超过long_query_time秒的语句,可以找到哪些查询语句执行时间长,以便于优化,默认是关闭的
 slow_query_log=ON
 slow_query_log_file=/home/mysql/mysql_slow_query.log 
 long_query_time=5    #慢查询时间,设置超过5秒执行的语句被记录,缺省时为10秒

Langkah 2: Mulakan semula service

systemctl mulakan semula mysqld

3 Tanya sama ada log dihidupkan

mysql -u root -p[密码]
 
 #查看错误日志存放位置
 show variables like 'log_error';    
  
 #查看通用查询日志是否开启
 show variables like 'general%'; 
  
 #查看二进制日志是否开启
 show variables like 'log_bin%';     
 
 #查看慢查询日功能是否开启
 show variables like '%slow%';   
 
 #查看慢查询时间设置
 show variables like 'long_query_time';                      
 
 
 #在数据库中设置开启慢查询的方法,即以修改变量值的方式开启。但重启服务后会失效。
 set global slow_query_log=ON;

4. Split Binary log

Fail mysql-bin.index akan membelah log binari.

Setiap kali anda memulakan semula mysql atau "flush log" dalam pangkalan data untuk menyegarkan log, log binari baharu akan dihasilkan.

Pembelajaran yang disyorkan: tutorial video mysql

Atas ialah kandungan terperinci Pengurusan log MySQL (perkongsian ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam