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

使用logrotete定時切割mysql的慢日志操作

 更新時間:2025年03月12日 17:07:55   作者:邱邱i  
本文介紹了如何在Linux系統(tǒng)中使用logrotate工具對MySQL慢查詢?nèi)罩具M行自動輪轉(zhuǎn)和管理配置,包括創(chuàng)建配置文件、設(shè)置輪轉(zhuǎn)頻率、文件命名、權(quán)限、執(zhí)行腳本以及測試配置的方法,感興趣的朋友一起看看吧

背景:

在 Linux 系統(tǒng)中,logrotate 是常用的日志文件管理工具,可以配置它來對 MySQL 的慢查詢?nèi)罩具M行輪轉(zhuǎn),例如按照每天或者每周進行輪轉(zhuǎn),將舊的日志文件備份壓縮并重新生成新的日志文件來繼續(xù)記錄!

創(chuàng)建配置文件

創(chuàng)建一個專門用于配置 MySQL 慢查詢?nèi)罩厩懈钜?guī)則的文件,通常放在 /etc/logrotate.d/ 目錄下。假設(shè)你的 MySQL 慢查詢?nèi)罩疚募麨?/var/lib/mysql/[主機名]-slow.log(這里的 [主機名] 需要替換為實際的主機名稱,你可以通過 hostname 命令查看主機名),創(chuàng)建名為 mysql-slow 的配置文件(文件路徑為 /etc/logrotate.d/mysql-slow

這是我目前在用的慢日志切割配置,可以直接拿來使用(密碼替換進去)

/data/mysql/my3306/log/slow.log {
    daily
    missingok
    rotate 30
    compress
    notifempty
    create 640 mysql mysql
    dateext                    
    dateformat -%Y%m%d         
    sharedscripts
    postrotate
        /usr/local/mysqlInstall/mysql/bin/mysql -uroot -p密碼 -e "SET GLOBAL slow_query_log = OFF; SET GLOBAL slow_query_log = ON;"
    endscript
}

關(guān)鍵參數(shù)說明

1. 輪轉(zhuǎn)頻率與保留策略

  • **daily**

每天檢查一次日志文件,滿足條件則觸發(fā)輪轉(zhuǎn)。

  • **rotate 30**

保留最近30次輪轉(zhuǎn)的日志文件(默認按天輪轉(zhuǎn),即保留30天日志)。

  • **compress**

壓縮舊日志為 .gz 格式,節(jié)省磁盤空間。

2. 文件命名與日期格式

  • **dateext**

使用日期作為輪轉(zhuǎn)文件的后綴(例如 slow.log-20231101)。

  • **dateformat -%Y%m%d**

自定義日期格式:-%Y%m%d 表示 -年月日(如 -20231101)。

3. 文件權(quán)限與空文件處理

  • **create 640 mysql mysql**

輪轉(zhuǎn)后創(chuàng)建的新日志文件權(quán)限為 640,所有者為 mysql 用戶和組(需確保 MySQL 進程有寫入權(quán)限)。

  • **notifempty**

如果日志文件為空,跳過輪轉(zhuǎn)(避免生成無意義的空日志文件)。

4. 執(zhí)行腳本與錯誤處理

  • **sharedscripts**

所有匹配的日志文件輪轉(zhuǎn)完成后,只執(zhí)行一次 postrotate 腳本(即使有多個日志文件)。

  • **postrotate**

輪轉(zhuǎn)后執(zhí)行以下操作:

  • 臨時關(guān)閉 MySQL 慢查詢?nèi)罩荆?code>slow_query_log = OFF)。
  • 重新開啟慢查詢?nèi)罩荆?code>slow_query_log = ON),使 MySQL 寫入新日志文件。
  • 注意:需替換 -p密碼 為實際的 MySQL root 密碼。

5. 其他

  • **missingok**

如果日志文件不存在,忽略錯誤繼續(xù)執(zhí)行(避免因文件丟失導(dǎo)致任務(wù)失?。?/p>

測試

配置完成后,可以手動運行 logrotate 命令來測試配置是否正確以及能否正常工作

logrotate -vf /etc/logrotate.d/mysql-slow

-f 參數(shù)表示強制按照配置文件執(zhí)行輪轉(zhuǎn)操作

定時任務(wù)部署

為了避免重復(fù)執(zhí)行,將cron.daily中的logrotate移除

cd 	/etc/cron.daily
mv logrotate logrotate.bak

crontab部署

0 2 * * *  /usr/sbin/logrotate -vf /etc/logrotate.d/mysql-slow 

到此這篇關(guān)于如何使用logrotete定時切割mysql的慢日志的文章就介紹到這了,更多相關(guān)mysql慢日志內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql 5.7.18 zip版安裝使用教程

    mysql 5.7.18 zip版安裝使用教程

    這篇文章主要為大家詳細介紹了mysql 5.7.18 zip版安裝使用教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • Linux下啟動多個mysql服務(wù)器例子

    Linux下啟動多個mysql服務(wù)器例子

    這篇文章主要介紹了Linux下啟動多個mysql服務(wù)器例子,本文還包括了3個可能遇到的問題及解決方法,需要的朋友可以參考下
    2014-07-07
  • MySQL中KEY、PRIMARY KEY、UNIQUE KEY、INDEX 的區(qū)別

    MySQL中KEY、PRIMARY KEY、UNIQUE KEY、INDEX 的區(qū)別

    本文給大家分享的是mysql索引中的KEY、PRIMARY KEY、UNIQUE KEY、INDEX 的區(qū)別,即主鍵索引,唯一索引和普通索引的區(qū)別,希望大家能夠喜歡
    2017-07-07
  • MySQL存儲過程參數(shù)的用法及說明

    MySQL存儲過程參數(shù)的用法及說明

    這篇文章主要介紹了MySQL存儲過程參數(shù)的用法及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Navicat無法連接MySQL報錯1251的解決方案

    Navicat無法連接MySQL報錯1251的解決方案

    這篇文章主要為大家詳細介紹了Navicat無法連接MySQL報錯1251的解決方案,文中解決方法介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2023-12-12
  • Mysql獲取當(dāng)前日期的前幾天日期的方法

    Mysql獲取當(dāng)前日期的前幾天日期的方法

    這篇文章主要介紹了Mysql獲取當(dāng)前日期的前幾天日期的方法,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-03-03
  • 淺析MySQL 備份與恢復(fù)

    淺析MySQL 備份與恢復(fù)

    這篇文章主要介紹了MySQL 備份與恢復(fù)的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下
    2020-08-08
  • Linux下mysql異地自動備份的方法

    Linux下mysql異地自動備份的方法

    這篇文章主要介紹了Linux下mysql異地自動備份的方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • 解決mysql安裝時出現(xiàn)error Nr.1045問題的方法

    解決mysql安裝時出現(xiàn)error Nr.1045問題的方法

    這篇文章主要為大家詳細介紹了解決mysql安裝時出現(xiàn)error Nr.1045問題的方法,感興趣的小伙伴們可以參考一下
    2016-06-06
  • MySQL 如何查找并刪除重復(fù)記錄的實現(xiàn)

    MySQL 如何查找并刪除重復(fù)記錄的實現(xiàn)

    這篇文章主要介紹了MySQL 如何查找并刪除重復(fù)記錄的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評論