MySQL中的6種日志分類的說明
發(fā)表時(shí)間:2023-08-31 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]MySQL主要有以下幾種日志類型:錯(cuò)誤日志――MySQL服務(wù)啟動(dòng)和關(guān)閉過程中的信息以及其它錯(cuò)誤和警告信息。默認(rèn)在數(shù)據(jù)目錄下。一般查詢?nèi)罩鲸D―用于記錄select查詢語句的日志。general_log、general_log_file 默認(rèn)關(guān)閉,建議關(guān)閉。慢查詢?nèi)罩鲸D―log-slow-querie...
MySQL主要有以下幾種日志類型:
錯(cuò)誤日志――MySQL服務(wù)啟動(dòng)和關(guān)閉過程中的信息以及其它錯(cuò)誤和警告信息。默認(rèn)在數(shù)據(jù)目錄下。
一般查詢?nèi)罩鲸D―用于記錄select查詢語句的日志。general_log、general_log_file 默認(rèn)關(guān)閉,建議關(guān)閉。
慢查詢?nèi)罩鲸D―log-slow-queries記錄所有超過long_query_time時(shí)間的SQL語句,
二進(jìn)制日志――記錄任何引起數(shù)據(jù)變化的操作,用于備份和還原。默認(rèn)存放在數(shù)據(jù)目錄中,在刷新和服務(wù)重啟時(shí)會(huì)滾動(dòng)二進(jìn)制日志。
中繼日志――從主服務(wù)器的二進(jìn)制文件中復(fù)制的事件,并保存為二進(jìn)制文件,格式和二進(jìn)制日志一樣。
事務(wù)日志――保證事務(wù)的一致性。
慢查詢?nèi)罩荆?/p>
mysql> show variables like "long%"; #查看慢查詢?nèi)罩拘畔?
+-----------------+----------+
Variable_name Value
+-----------------+----------+
long_query_time 3.000000
+-----------------+----------+
1 row in set (0.13 sec)
mysql> show variables like "slow%"; #查看慢查詢?nèi)罩驹O(shè)置
+---------------------+-----------------------------+
Variable_name Value
+---------------------+-----------------------------+
slow_launch_time 2
slow_query_log OFF
slow_query_log_file /data/mysql/slave2-slow.log
+---------------------+-----------------------------+
3 rows in set (0.06 sec)
mysqldumpslow -s c -t 10 /database/mysql/mysql06_slow.log #查看訪問最多的10個(gè)SQL
mysql> set long_query_time=5; #慢查詢時(shí)間設(shè)置,永久改變需要更改
Query OK, 0 rows affected (0.25 sec) 配置文件
二進(jìn)制日志:
mysql> show global variables like "%log%"; #查看日志相關(guān)變量
mysql> show variables like "%log_bin%"; #查看二進(jìn)制變量
+---------------------------------+-------+
Variable_name Value
+---------------------------------+-------+
log_bin OFF
log_bin_basename
log_bin_index
log_bin_trust_function_creators OFF
log_bin_use_v1_row_events OFF
sql_log_bin ON
+---------------------------------+-------+
[root@slave02 mysql]# vim /etc/my.cnf
log_bin #去掉注釋,開啟二進(jìn)制日志
[root@slave02 mysql]# service mysqld restart
mysql> show binary logs; #查看所有二進(jìn)制日志文件
+-------------------+-----------+
Log_name File_size
+-------------------+-----------+
slave2-bin.000001 168
slave2-bin.000002 120
+-------------------+-----------+
mysql> show master status; #查看當(dāng)前使用的二進(jìn)制日志
+-------------------+----------+--------------+------------------+-------------------+
File Position Binlog_Do_DB Binlog_Ignore_DB Executed_Gtid_Set
+-------------------+----------+--------------+------------------+-------------------+
slave2-bin.000002 120
+-------------------+----------+--------------+------------------+-------------------+
1 row in set (0.03 sec)
mysql> flush logs; #刷新二進(jìn)制日志
Query OK, 0 rows affected (0.17 sec)
[root@slave02 mysql]# mysqlbinlog mysql-bin.00001; #顯示二進(jìn)制文件內(nèi)容
mysql> show global status like '%Slow_queries%'; #查看慢查詢?nèi)罩緮?shù)目
【相關(guān)推薦】
1. 免費(fèi)mysql在線視頻教程
2. MySQL最新手冊(cè)教程
3. 數(shù)據(jù)庫設(shè)計(jì)那些事
以上就是MySQL中的六種日志類型的介紹的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。