慢查詢優化的基本步驟 慢日誌管理

2021-10-20 07:19:52 字數 1794 閱讀 1114

show variables like

'%queries%'

;set

global

[變數名]

=[值]

mysqld --defaults-file='e:\wupeiqi\mysql-5.7.16-winx64\mysql-5.7.16-winx64\my-default.ini'
slow_query_log =

onslow_query_log_file =

[日誌檔案路徑]

ps : 修改完配置檔案後需要重啟服務

1

. 啟用

# vim /etc/my.cnf

[mysqld]

log-

bin[

=dir\[filename]

]# service mysqld restart

2. 暫停

//僅當前會話

set sql_log_bin=0;

set sql_log_bin=1;

3. 檢視

檢視全部:

# mysqlbinlog mysql.000002

# mysqlbinlog mysql.000002 --start-datetime="2012-12-05 10:02:56"

# mysqlbinlog mysql.000002 --stop-datetime="2012-12-05 11:02:54"

# mysqlbinlog mysql.000002 --start-datetime="2012-12-05 10:02:56" --stop-datetime="2012-12-05 11:02:54"

按位元組數:

# mysqlbinlog mysql.000002 --start-position=260

# mysqlbinlog mysql.000002 --stop-position=260

# mysqlbinlog mysql.000002 --start-position=260 --stop-position=930

4. 截斷bin

-log(產生新的bin

-log檔案)

a. 重啟mysql伺服器

b.# mysql -uroot -p123 -e 'flush logs'

5. 刪除bin

-log檔案

# mysql -uroot -p123 -e 'reset master'

啟用通用查詢日誌

# vim /etc/my.cnf

[mysqld]

log[

=dir\[filename]

]# service mysqld restart

啟用慢查詢日誌

# vim /etc/my.cnf

[mysqld]

log-slow-queries[=dir\[filename]]

long_query_time=n

# service mysqld restart

mysql 5.6:

slow-query-log=1

slow-query-log-file=slow.log

long_query_time=3

檢視慢查詢日誌

測試:benchmark(count,expr)

select benchmark(50000000,2*3);

MySQL優化 慢查詢日誌

mysql的慢查詢日誌是mysql提供的一種日誌記錄,它用來記錄在mysql中響應時間超過閥值的語句,具體指執行時間超過long query time值的sql,則會被記錄到慢查詢日誌中。當然,如果不是調優需要的話,一般不建議啟動該引數,因為開啟慢查詢日誌會或多或少帶來一定的效能影響。開啟了慢查詢日...

慢查詢日誌

慢查詢日誌 slow query log 啟動 停止記錄慢查詢日誌,預設是off slow query log file 指定慢查詢日誌的儲存路徑,預設存放路徑與data存放路徑一致 long query time 指定記錄慢查詢日子sql執行時間的閾值,預設是10s,通常改為1ms可能比較合適 l...

慢查詢日誌

1.mysql的慢查詢日誌是mysql提供的一種日誌記錄,用來記錄響應時間超過閾值的語句,具體指執行時間超過long query time值得sql,則會記錄到慢查詢日誌中。2.預設情況下,mysql資料庫沒有開啟慢查詢日誌,需要我們手動設定該引數,如果不是調優需要的話,一般不建議啟動該引數,開啟後...