日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
圖文結(jié)合帶你搞懂MySQL日志之GeneralQueryLog(通用查詢?nèi)罩荆?/div>

什么是通用查詢?nèi)罩?/h2>

通用查詢?nèi)罩荆℅eneral Query Log) 用來記錄用戶的所有操作,包括啟動和關(guān)閉MySQL服務(wù)、所有用戶的連接開始時間和截止時間、發(fā)給 MySQL 數(shù)據(jù)庫服務(wù)器的所有 SQL 指令等。當(dāng)我們的數(shù)據(jù)發(fā)生異常時, 查看通用查詢?nèi)罩?,還原操作時的具體場景 ,可以幫助我們準(zhǔn)確定位問題。

創(chuàng)新互聯(lián)建站自2013年創(chuàng)立以來,先為英山等服務(wù)建站,英山等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為英山企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

查看當(dāng)前狀態(tài)

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+---------------------------+
| Variable_name | Value |
+------------------+---------------------------+
| general_log | OFF |
| general_log_file | /var/lib/mysql/zhyno1.log |
+------------------+---------------------------+
2 rows in set (0.00 sec)

從general_log?可以看到通用查詢?nèi)罩咎幱陉P(guān)閉狀態(tài),從general_log_file可以看到日志的目錄以及文件名稱

啟動日志

  • 方式1

修改 my.cnf 或者 my.ini 配置文件來設(shè)置。在 [mysqld] 組下加入log選項,并重啟MySQL服務(wù)。格式如下:

[mysqld]
general_log=ON
general_log_file=[path[filename]] #日志文件所在目錄路徑,filename為日志文件名

如果不指定目錄和文件名,通用查詢?nèi)罩緦⒛J(rèn)存儲在MySQL數(shù)據(jù)目錄中的hostname.log文件中,hostname表示主機名。

  • 方式2
SET GLOBAL general_log=on;  # 開啟通用查詢?nèi)罩?br>SET GLOBAL general_log_file='path/filename'; # 設(shè)置日志文件保存位置

查看日志

通用查詢?nèi)罩臼且晕谋疚募男问酱鎯υ谖募到y(tǒng)中的,可以使用文本編輯器直接打開日志文件。每臺MySQL服務(wù)器的通用查詢?nèi)罩緝?nèi)容是不同的。

  • 在Windows操作系統(tǒng)中,使用文本文件查看器;
  • 在Linux系統(tǒng)中,可以使用vi工具或者gedit工具查看;
  • 在Mac OSX系統(tǒng)中,可以使用文本文件查看器或者vi等工具查看。
[root@zhyno1 mysql]# cat zhyno1.log
/usr/sbin/mysqld, Version: 8.0.25-16 (GreatSQL (GPL), Release 16, Revision 8bb0e5af297). started with:
Tcp port: 3306 Unix socket: /var/lib/mysql/mysql.sock
Time Id Command Argument
2022-11-24T10:07:31.300579Z 4398 Query SHOW VARIABLES LIKE '%general%'
2022-11-24T10:07:42.344537Z 4398 Query SET GLOBAL general_log=OFF

可以看出,該日志非常清晰地記錄了客戶端的所有行為。

停止日志

修改my.cnf或者my.ini文件,把[mysqld]組下的general_log值設(shè)置為OFF或者把general_log一項注釋掉。修改保存后,再重啟MySQL服務(wù),即可生效。

[mysqld]
general_log=OFF

或是

SET GLOBAL general_log=off;

刪除\刷新日志

如果數(shù)據(jù)的使用非常頻繁,那么通用查詢?nèi)罩緯加梅?wù)器非常大的磁盤空間。數(shù)據(jù)管理員可以刪除很長時間之前的查詢?nèi)罩?,以保證MySQL服務(wù)器上的硬盤空間。

在 MySQL 中,可以使用 mysqladmin 命令來開啟新的通用查詢?nèi)罩?。新的通用查詢?nèi)罩緯苯痈采w舊的查詢?nèi)罩?,不需要再手動刪除了。

mysqladmin 命令的語法如下:

mysqladmin -uroot -p flush-logs

需要注意的是,如果希望備份舊的通用查詢?nèi)罩荆仨毾葘⑴f的日志文件拷貝出來或者改名。然后,再執(zhí)行 mysqladmin 命令。

除了上述方法之外,還可以手工刪除通用查詢?nèi)罩?。刪除之后需要重新啟動 MySQL 服務(wù)。重啟之后就會生成新的通用查詢?nèi)罩?。如果希望備份舊的日志文件,可以將舊的日志文件改名,然后重啟 MySQL 服務(wù)。

參考文章

  • 《MySQL是怎樣運行的--從根兒上理解MySQL》—小孩子
  • 4919(https://juejin.cn/book/6844733769996304392)

當(dāng)前題目:圖文結(jié)合帶你搞懂MySQL日志之GeneralQueryLog(通用查詢?nèi)罩荆?
網(wǎng)址分享:http://www.5511xx.com/article/dphpiij.html