7、MySQL设置日志输出方式
MySQL 的查詢?nèi)罩局С謱懭氲轿募驅(qū)懭霐?shù)據(jù)表兩種輸出形式。啟用了普通查詢?nèi)罩净蚵樵內(nèi)罩竟δ芎?#xff0c;可以選擇讓服務(wù)器把日志寫入到日志文件、mysql 數(shù)據(jù)庫中的日志表、或者同時寫到這兩個地方。
可以通過以下命令查看日志輸出類型:
mysql> SHOW VARIABLES LIKE '%log_out%'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_output | FILE | +---------------+-------+ 1 row in set, 1 warning (0.08 sec)結(jié)果顯示,日志輸出類型為 FILE。
要想在運行時更改日志輸出目標(biāo),可以在啟動服務(wù)器時,設(shè)置全局系統(tǒng)變量 log_output 的值,格式如下:
SET GLOBAL log_output='value';value 的值可以是:
- FILE:表示把日志寫入到文件。如果未指定 log_output 的值,默認(rèn)為 FILE。
- TABLE:表示把日志寫入到 mysql 數(shù)據(jù)庫的 slow_log 或 general_log 表中。
- MySQL 可以同時支持 2 種日志存儲方式,配置的時候以逗號隔開,即 log_output=‘FILE,TABLE’。
需要注意的是,系統(tǒng)變量 log_output 只確定了日志使用什么輸出目標(biāo),并不會啟用日志功能。
相對于寫入到文件,日志寫入到數(shù)據(jù)表中要耗費更多的系統(tǒng)資源。因此,對于需要啟用查詢?nèi)罩?#xff0c;又需要獲得更高的系統(tǒng)性能,建議優(yōu)先選擇將日志寫入到文件。
日志表(slow_log 或 general_log)中的內(nèi)容只允許查看,不允許修改,除非服務(wù)器自己進(jìn)行更改。因此,你只能對日志表使用 SELECT 語句,不能使用 INSERT、DELETE 或 UPDATE 語句。不過,可以使用 TRUNCATE TABLE 語句來清空日志表。
例 1
首先設(shè)置日志寫入到日志表,然后查詢 test 數(shù)據(jù)庫中 tb_student 數(shù)據(jù)表的記錄,并查看 mysql 數(shù)據(jù)庫中的 slow_log 表中的記錄。SQL 語句和運行結(jié)果如下:
結(jié)果顯示,超過慢查詢?nèi)罩局付〞r間的 SQL 語句都寫入到了 mysql 數(shù)據(jù)庫的 slow_log 表中。
總結(jié)
以上是生活随笔為你收集整理的7、MySQL设置日志输出方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 6、MySQL慢查询日志(Slow Qu
- 下一篇: 1、MySQL性能优化简述