真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MySQL慢日志選項參數(shù)有哪些

這篇文章給大家分享的是有關MySQL慢日志選項參數(shù)有哪些的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

網(wǎng)站設計制作過程拒絕使用模板建站;使用PHP+MYSQL原生開發(fā)可交付網(wǎng)站源代碼;符合網(wǎng)站優(yōu)化排名的后臺管理系統(tǒng);成都網(wǎng)站建設、成都網(wǎng)站設計收費合理;免費進行網(wǎng)站備案等企業(yè)網(wǎng)站建設一條龍服務.我們是一家持續(xù)穩(wěn)定運營了十載的創(chuàng)新互聯(lián)建站網(wǎng)站建設公司。



〇 log_output
枚舉型,動態(tài)參數(shù)。
用于設置slow log和general log的輸出對象。
可以設置為none,table,file,分別代表:不輸出,存于表,存于文件。

并且也可以組合設置:
比如SET GLOBAL log_output='table,file';
則代表同時輸出到表和文件中。

如果設置SET GLOBAL log_output='none,file' 或 'none,table' 或 'table,file,none' 均代表'none'



〇 slow_query_log與slow_query_log_file
slow_query_log 布爾型,動態(tài)參數(shù),默認為OFF。
用于控制是否開啟slow log。

slow_query_log_file 動態(tài)參數(shù),指定slow log文件的名稱和路徑。
若未設置,則slow log的文件名取默認值$host_name-slow.log,存放于$datadir下。



〇 long_query_time
動態(tài)參數(shù),默認值為10。
記錄執(zhí)行時間(real time)超過該值以上的SQL。



〇 log_queries_not_using_indexes
布爾型,動態(tài)參數(shù),默認為OFF。
若開啟,則表示記錄所有未使用索引的SQL,無論是否超過long_query_time所設置的值。
不遵循long_query_time。

  1. mysql> SET SESSION long_query_time=10000;

  2. Query OK, 0 rows affected (0.00 sec)

  3. mysql> CREATE TABLE test.slow(id int);

  4. Query OK, 0 rows affected (0.03 sec)

  5. mysql> INSERT INTO test.slow SELECT 1;

  6. Query OK, 1 row affected (0.01 sec)

  7. Records: 1  Duplicates: 0  Warnings: 0

  8. mysql> SELECT * FROM test.slow WHERE id=1;

  9. +------+

  10. | id   |

  11. +------+

  12. | 1    |

  13. +------+

  14. 1 row in set (0.00 sec)

  15. mysql> SELECT start_time, query_time,lock_time,sql_text FROM mysql.slow_log;

  16. +----------------------------+-----------------+-----------------+------------------------------------+

  17. | start_time                 | query_time      | lock_time       | sql_text                           |

  18. +----------------------------+-----------------+-----------------+------------------------------------+

  19. | 2017-11-16 15:09:32.114488 | 00:00:00.000346 | 00:00:00.000166 | SELECT * FROM test.slow WHERE id=1 |

  20. +----------------------------+-----------------+-----------------+------------------------------------+

  21. 1 row in set (0.00 sec)

此時上面這一條SQL被記錄到slow log,并且忽略了long_query_time的設置。

加一個索引,再多一次查詢:

  1. mysql> ALTER TABLE test.slow ADD PRIMARY KEY pk(id);

  2. Query OK, 0 rows affected (0.14 sec)

  3. Records: 0  Duplicates: 0  Warnings: 0

  4. mysql> SELECT * FROM test.slow WHERE id=1;

  5. +----+

  6. | id |

  7. +----+

  8. | 1  |

  9. +----+

  10. 1 row in set (0.00 sec)

  11. mysql> SELECT start_time, query_time,lock_time,sql_text FROM mysql.slow_log;

  12. +----------------------------+-----------------+-----------------+----------------------------------------------------------------------+

  13. | start_time                 | query_time      | lock_time       | sql_text                                                             |

  14. +----------------------------+-----------------+-----------------+----------------------------------------------------------------------+

  15. | 2017-11-16 15:09:32.114488 | 00:00:00.000346 | 00:00:00.000166 | SELECT * FROM test.slow WHERE id=1                                   |

  16. | 2017-11-16 15:10:50.196590 | 00:00:00.000437 | 00:00:00.000148 | SELECT start_time, query_time,lock_time,sql_text FROM mysql.slow_log |

  17. +----------------------------+-----------------+-----------------+----------------------------------------------------------------------+

  18. 2 rows in set (0.00 sec)

可以發(fā)現(xiàn)第二次SELECT的SQL的沒有被記錄到slow log。
至于這條查詢slow log的語句本身被記錄到slow log,也是因為這條查mysql.slow_log的SQL沒有使用到索引。

因為開啟該參數(shù)造成slow log暴漲的案例:
http://blog.itpub.net/29773961/viewspace-1811829/



〇 log_throttle_queries_not_using_indexes
整型,動態(tài)參數(shù),默認為0。
如果log_queries_not_using_indexes開啟,
那么log_throttle_queries_not_using_indexes用于限制每分鐘所記錄的slow log數(shù)量。
設置為0則表示“不限制”。



〇 log_slow_admin_statements
布爾型,動態(tài)參數(shù),默認為OFF。5.7后新增的參數(shù)。
可用于控制slow log是否記錄數(shù)據(jù)庫管理的SQL。
若開啟,則表示記錄這些SQL。
數(shù)據(jù)庫管理的SQL包括:
ALTER TABLE, ANALYZE TABLE, CHECK TABLE, CREATE INDEX, DROP INDEX, OPTIMIZE TABLE, REPAIR TABLE。

遵循long_query_time。


第一次執(zhí)行check table,時間超過2秒,但未被記錄。
第二次執(zhí)行check table,開啟log_queries_not_using_indexes,超過2秒,被記錄。

  1. mysql> SELECT @@long_query_time, @@log_queries_not_using_indexes;

  2. +-------------------+---------------------------------+

  3. | @@long_query_time | @@log_queries_not_using_indexes |

  4. +-------------------+---------------------------------+

  5. | 2.000000          | 0                               |

  6. +-------------------+---------------------------------+

  7. 1 row in set (0.00 sec)

  8. mysql> CHECK TABLE test.t0;

  9. +---------+-------+----------+----------+

  10. | Table   | Op    | Msg_type | Msg_text |

  11. +---------+-------+----------+----------+

  12. | test.t0 | check | status   | OK       |

  13. +---------+-------+----------+----------+

  14. 1 row in set (4.28 sec)

  15. mysql> SET GLOBAL log_slow_admin_statements = 1;

  16. Query OK, 0 rows affected (0.00 sec)

  17. mysql> CHECK TABLE test.t0;

  18. +---------+-------+----------+----------+

  19. | Table   | Op    | Msg_type | Msg_text |

  20. +---------+-------+----------+----------+

  21. | test.t0 | check | status   | OK       |

  22. +---------+-------+----------+----------+

  23. 1 row in set (4.27 sec)

  24. mysql> SELECT start_time, query_time,lock_time,sql_text FROM mysql.slow_log;

  25. +----------------------------+-----------------+-----------------+---------------------+

  26. | start_time                 | query_time      | lock_time       | sql_text            |

  27. +----------------------------+-----------------+-----------------+---------------------+

  28. | 2017-11-16 15:31:24.378343 | 00:00:04.271940 | 00:00:00.000134 | CHECK TABLE test.t0 |

  29. +----------------------------+-----------------+-----------------+---------------------+

  30. 1 row in set (0.00 sec)



〇 log_slow_slave_statements
布爾型,動態(tài)參數(shù),默認為OFF。5.7后新增的參數(shù)。
開啟后,在slave上將會記錄超過long_query_time的日志記錄。
即便開啟了這個選項,也不會立刻生效,新的變更需要再一次START SLAVE后生效。



〇 min_examined_row_limit
整型,動態(tài)參數(shù),默認為0。
設置該值,則表示返回行數(shù)大于等于該值的sql,將會被記錄到slow log中。

  1. mysql> SET SESSION long_query_time=0, SESSION min_examined_row_limit=5;

  2. Query OK, 0 rows affected (0.00 sec)

  3. mysql> SELECT * FROM test.t0 LIMIT 4;

  4. …………

  5. 4 rows in set (0.00 sec)

  6. mysql> SELECT * FROM test.t0 LIMIT 5;

  7. …………

  8. 5 rows in set (0.00 sec)

  9. mysql> SELECT * FROM test.t0 LIMIT 10;

  10. …………

  11. 10 rows in set (0.00 sec)

  12. mysql> SELECT start_time, query_time,lock_time,sql_text FROM mysql.slow_log;

  13. +----------------------------+-----------------+-----------------+--------------------------------+

  14. | start_time                 | query_time      | lock_time       | sql_text                       |

  15. +----------------------------+-----------------+-----------------+--------------------------------+

  16. | 2017-11-17 16:08:14.851394 | 00:00:00.000286 | 00:00:00.000134 | SELECT * FROM test.t0 LIMIT 5  |

  17. | 2017-11-17 16:08:16.744389 | 00:00:00.000284 | 00:00:00.000135 | SELECT * FROM test.t0 LIMIT 10 |

  18. +----------------------------+-----------------+-----------------+--------------------------------+

  19. 2 rows in set (0.00 sec)

個人認為大多數(shù)場景都無需刻意設置該值,取默認為0就好。

〇 log-short-format
默認為FLASE,該選項僅僅為啟動時選項,并不支持系統(tǒng)變量。
如果該選項被激活,則表示在slow log中記錄更少的信息。


〇 log_timestamps
枚舉型,動態(tài),默認為UTC,5.7.2后出現(xiàn)。

感謝各位的閱讀!關于“MySQL慢日志選項參數(shù)有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!


名稱欄目:MySQL慢日志選項參數(shù)有哪些
網(wǎng)站URL:http://weahome.cn/article/jgicop.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部