欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql中g(shù)eneral_log日志知識(shí)點(diǎn)介紹

 更新時(shí)間:2019年08月21日 17:54:05   作者:wjw555  
這篇文章主要介紹了mysql中g(shù)eneral_log日志知識(shí)點(diǎn)的介紹以及其他相關(guān)內(nèi)容,以后興趣的朋友們學(xué)習(xí)下。

以下操作演示都是基于mysql5.6.36版本:

工作中經(jīng)常遇到這樣的問題:mysql數(shù)據(jù)訪問能量很大,想要從sql方面優(yōu)化。研發(fā)經(jīng)常會(huì)問到能看到哪些SQL執(zhí)行比較頻繁嗎?回道:不能哦,只能看到當(dāng)前正在運(yùn)行的SQL和慢日志里記錄的SQL。因?yàn)闉榱诵阅芸紤],一般general log不會(huì)開啟。slow log可以定位一些有性能問題的sql,而general log會(huì)記錄所有的SQL。然而有時(shí)候生產(chǎn)上的mysql出現(xiàn)性能問題,短時(shí)間開啟general log,來獲取sql執(zhí)行的情況,對(duì)排查和分析mysql的性能問題,還是有很大的幫助的?;蛘呤怯袝r(shí)候,不清楚程序執(zhí)行了什么sql語句,但是又要排除錯(cuò)誤,找不到原因的情況下,也是可以短暫的開啟這個(gè)general log日志的。

mysql5.0版本,如果要開啟slow log、general log,需要重啟,從MySQL5.1.6版開始,general query log和slow query log開始支持寫到文件或者數(shù)據(jù)庫(kù)表兩種方式,并且日志的開啟,輸出方式的修改,都可以在Global級(jí)別動(dòng)態(tài)修改。

開啟general log有很多的方式。

下面簡(jiǎn)單介紹和演示下:

方法一:更改my.cnf配置文件

[root@git-server ~]# grep general_log /etc/my.cnf
general_log = 1
general_log_file = /tmp/general.log

重新啟動(dòng)mysql,這個(gè)操作相當(dāng)于是永久生效。當(dāng)然這種方式是不允許在生產(chǎn)上采用的。因?yàn)橐貑ysql,會(huì)中斷mysql的業(yè)務(wù)。同時(shí)general.log會(huì)記錄所有的關(guān)于mysql的DDL和DML語句,非常消耗資源,一般都是在協(xié)助排除mysql故障時(shí),臨時(shí)短暫的開啟幾分鐘。事后都要關(guān)閉的。

方法二:在mysql命令控制臺(tái)操作

需要root用戶才有訪問此文件的權(quán)限

默認(rèn)這個(gè)日志是被關(guān)閉掉的。

mysql> show global variables like '%general%';
+------------------+---------------------------------+
| Variable_name  | Value              |
+------------------+---------------------------------+
| general_log   | OFF               |
| general_log_file | /data/mysql/data/git-server.log |
+------------------+---------------------------------+
2 rows in set (0.00 sec)

mysql> 

有時(shí)需要臨時(shí)開啟MySQL的全局general_log,可以登錄mysql直接設(shè)置日志的路徑并開啟general_log

mysql> set global general_log_file='/tmp/general_log';
Query OK, 0 rows affected (0.00 sec)

mysql> set global general_log=on;
Query OK, 0 rows affected (0.02 sec)

mysql> show global variables like '%general%';
+------------------+------------------+
| Variable_name  | Value      |
+------------------+------------------+
| general_log   | ON        |
| general_log_file | /tmp/general_log |
+------------------+------------------+
2 rows in set (0.00 sec)

mysql> 

[root@git-server ~]# tailf /tmp/general_log
180717 22:55:51   2 Query show databases
180717 22:56:04   2 Query SELECT DATABASE()
      2 Init DB  test
180717 22:56:14   2 Query select * from student3

在使用完后可以直接set global general_log=off;關(guān)閉這個(gè)日志

方法三:將日志保存在mysql數(shù)據(jù)庫(kù)general_log表中

mysql> set global log_output='table';
mysql> set global general_log=on;
mysql> use mysql;
mysql> select * from test.student3;
+----+--------------+------------+--------+------+
| id | teacher_name | teacher_id | name  | sex |
+----+--------------+------------+--------+------+
| 1 | 花花     |     1 | 三安  | 女  |
| 4 | 散散     |     2 | 三安  | 女  |
| 6 | bibi     |     3 | 三安  | 女  |
+----+--------------+------------+--------+------+
3 rows in set (0.00 sec)

mysql> select * from general_log;
| 2018-07-17 23:00:12 | root[root] @ localhost [] |     2 | 1132333306 | Query    | select * from test.student3 

查看/tmp/general.log的信息,可以大致看到哪些sql查詢/更新/刪除/插入比較頻繁了。比如有些表不是經(jīng)常變化的,查詢量又很大,就完全可以cache;對(duì)主備延遲要求不高的表,讀可以放到備庫(kù);等等

上面就是本次介紹的general_log日志的全部知識(shí)點(diǎn)內(nèi)容,感謝大家的閱讀和對(duì)腳本之家的支持。

相關(guān)文章

  • mysql 8.0.12 安裝配置教程

    mysql 8.0.12 安裝配置教程

    這篇文章主要為大家詳細(xì)介紹了mysql 8.0.12安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • MySQL默認(rèn)值選型問題(是空,還是?NULL)

    MySQL默認(rèn)值選型問題(是空,還是?NULL)

    這篇文章主要介紹了MySQL默認(rèn)值選型問題(是空,還是?NULL),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 如何優(yōu)雅安全的備份MySQL數(shù)據(jù)

    如何優(yōu)雅安全的備份MySQL數(shù)據(jù)

    這篇文章主要介紹了如何優(yōu)雅安全的備份MySQL數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • Mysql事項(xiàng),視圖,函數(shù),觸發(fā)器命令(詳解)

    Mysql事項(xiàng),視圖,函數(shù),觸發(fā)器命令(詳解)

    下面小編就為大家?guī)硪黄狹ysql事項(xiàng),視圖,函數(shù),觸發(fā)器命令(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-11-11
  • 常見的十種SQL語句性能優(yōu)化策略詳解

    常見的十種SQL語句性能優(yōu)化策略詳解

    這篇文章主要介紹了常見的十種SQL語句性能優(yōu)化策略詳解,SQL語句性能優(yōu)化是提高數(shù)據(jù)庫(kù)查詢效率的關(guān)鍵步驟,可以減少查詢時(shí)間,提高系統(tǒng)響應(yīng)速度,本文將介紹一些常見的SQL語句性能優(yōu)化技巧,包括索引的使用、合理的查詢條件、避免全表掃描等,需要的朋友可以參考下
    2023-10-10
  • 快速了解MySQL 索引

    快速了解MySQL 索引

    這篇文章主要介紹了MySQL 索引的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • 深度解析MySQL 5.7之臨時(shí)表空間

    深度解析MySQL 5.7之臨時(shí)表空間

    盡管臨時(shí)表在實(shí)際在線場(chǎng)景中很少會(huì)去顯式使用,但在某些運(yùn)維場(chǎng)景還是需要到的,在MySQL5.7中,專門針對(duì)臨時(shí)表做了些優(yōu)化,下面這篇文章我們來一起深入的解析MySQL 5.7之臨時(shí)表空間,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-12-12
  • 淺談mysql的中文亂碼問題

    淺談mysql的中文亂碼問題

    本文主要給大家分享了本人在項(xiàng)目中遇到的一些mysql中文亂碼的問題的解決方法,非常簡(jiǎn)單實(shí)用,這里推薦給大家,有需要的小伙伴可以參考下。
    2015-03-03
  • MySQL中大數(shù)據(jù)表增加字段的實(shí)現(xiàn)思路

    MySQL中大數(shù)據(jù)表增加字段的實(shí)現(xiàn)思路

    最近遇到的一個(gè)問題,需要在一張將近1000萬數(shù)據(jù)量的表中添加加一個(gè)字段,但是直接添加會(huì)導(dǎo)致mysql 奔潰,所以需要利用其他的方法進(jìn)行添加,這篇文章主要給大家介紹了MySQL中大數(shù)據(jù)表增加字段的實(shí)現(xiàn)思路,需要的朋友可以參考借鑒。
    2017-01-01
  • MySQL 客戶端不輸入用戶名和密碼直接連接數(shù)據(jù)庫(kù)的2個(gè)方法

    MySQL 客戶端不輸入用戶名和密碼直接連接數(shù)據(jù)庫(kù)的2個(gè)方法

    MySQL 客戶端不輸入用戶名和密碼直接連接數(shù)據(jù)庫(kù)的2個(gè)方法,大家可以測(cè)試下。
    2009-07-07

最新評(píng)論