最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL5.7限制general_log日志大小的實(shí)現(xiàn)

 更新時(shí)間:2024年10月29日 11:28:59   作者:高達(dá)可以過(guò)山車不行  
MySQL5.7.41中為避免通用查詢?nèi)罩緂eneral_log快速增長(zhǎng)占用硬盤空間,可以通過(guò)定時(shí)任務(wù)執(zhí)行腳本進(jìn)行每日備份或清理,從而限制其大小,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

背景

需求:

  • 在MySQL 5.7.41中開(kāi)啟general_log 并限制其大小,避免快速增長(zhǎng)占用硬盤空間。

解決:

  • 通過(guò)定時(shí)任務(wù),執(zhí)行簡(jiǎn)單的腳本,判斷general_log 日志的大小,實(shí)現(xiàn)對(duì)通用查詢?nèi)罩镜?ldquo;每日備份”或“每日清理”的功能。

多說(shuō)幾句:

  • 等保二級(jí)要求必須開(kāi)啟MySQL數(shù)據(jù)庫(kù)的通用查詢?nèi)罩?code>general_log ,但其文件大小增長(zhǎng)速度太快,數(shù)據(jù)庫(kù)有效數(shù)據(jù)都還沒(méi)增長(zhǎng)多少,硬盤空間可能就會(huì)被general_log 日志占用不少。而binog 至少還能通過(guò)binlog_expire_logs_seconds過(guò)期時(shí)間參數(shù)設(shè)置日志保存策略,避免占用空間。沒(méi)有這樣的參數(shù)限制general_log,必然要通過(guò)其它手段限制general_log空間。

實(shí)際操作:備份腳本和清理腳本

提供兩種思路:

  • 思路一:每日檢查日志大小,當(dāng)其超過(guò)某個(gè)閾值時(shí),將文件復(fù)制歸檔到某個(gè)專門存儲(chǔ)日志的目錄。
  • 思路二:每日檢查日志大小,當(dāng)超過(guò)某個(gè)閾值時(shí),不執(zhí)行歸檔備份,直接將general_log內(nèi)容清除。

MySQL中開(kāi)啟general日志需要修改my.cnf文件,增加以下兩行指定日志存儲(chǔ)路徑:

[mysqld]
general_log = 1
general_log_file = /mnt/general.log

思路一:每日備份日志

參考腳本 bak_general_log.sh

#!/bin/bash

LOG_FILE="/mnt/general.log"
MAX_SIZE=100

if [ -f "$LOG_FILE" ]; then
    CURRENT_SIZE=$(du -m "$LOG_FILE" | awk '{print $1}')
    
    if [ "$CURRENT_SIZE" -gt "$MAX_SIZE" ]; then
        mv "$LOG_FILE" "$LOG_FILE.$(date +%Y%m%d%H%M%S)"
        touch "$LOG_FILE"
        chmod 0640 "$LOG_FILE"
        chown mysql:mysql "$LOG_FILE"
        systemctl restart mysql
    fi
fi

思路二:每日清空日志

參考腳本 clear_general_log.sh

#!/bin/bash

LOG_FILE="/mnt/general.log"
MAX_SIZE=100

if [ -f "$LOG_FILE" ]; then
    CURRENT_SIZE=$(du -m "$LOG_FILE" | awk '{print $1}')
    
    if [ "$CURRENT_SIZE" -gt "$MAX_SIZE" ]; then
        echo > "$LOG_FILE"
    fi
fi

快速驗(yàn)證腳本的方法:dd創(chuàng)建日志文件

  • 用dd命令快速生成指定大小的文件,比如生成101MB大小的/mnt/general.log文件,可以執(zhí)行以下命令:
dd if=/dev/zero of=/mnt/general.log bs=1M count=101
  • 執(zhí)行之前準(zhǔn)備的腳本文件,查看結(jié)果。

參考截圖

在這里插入圖片描述

實(shí)際操作:配置corntab定時(shí)任務(wù)

給腳本配置可執(zhí)行權(quán)限:

chmod +x bak_general_log.sh
chmod +x clear_general_log.sh

使用cron等工具將腳本定期執(zhí)行,例如每天凌晨執(zhí)行一次:

crontab -e

然后在編輯器中添加以下內(nèi)容:

0 0 * * * /mnt/bak_general_log.sh
0 0 * * * /mnt/clear_general_log.sh

上述腳本二選一即可。

結(jié)束

注意:

  • 備份腳本中沒(méi)有指定備份目錄。
  • 備份腳本中涉及了MySQL應(yīng)用重啟。
  • 備份腳本的具體內(nèi)容可根據(jù)實(shí)際情況修改。

到此這篇關(guān)于MySQL5.7限制general_log日志大小的文章就介紹到這了,更多相關(guān)MySQL5.7限制general_log日志內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • mysql排序ORDER BY不生效的問(wèn)題解決

    mysql排序ORDER BY不生效的問(wèn)題解決

    order by作為一個(gè)常用的功能,在項(xiàng)目中應(yīng)該經(jīng)常用到,本文主要介紹了mysql排序ORDER BY不生效的問(wèn)題解決,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • mysql 8.0.12安裝配置方法圖文教程(Windows版)

    mysql 8.0.12安裝配置方法圖文教程(Windows版)

    這篇文章主要為大家詳細(xì)介紹了Windows下mysql 8.0.12安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • MYSQL如何自動(dòng)為查詢數(shù)據(jù)的結(jié)果編上序號(hào)詳解

    MYSQL如何自動(dòng)為查詢數(shù)據(jù)的結(jié)果編上序號(hào)詳解

    這篇文章主要給大家介紹了關(guān)于MYSQL如何自動(dòng)為查詢數(shù)據(jù)的結(jié)果編上序號(hào)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起看看吧。
    2017-11-11
  • MySQL兩個(gè)表的親密接觸-連接查詢的原理分析

    MySQL兩個(gè)表的親密接觸-連接查詢的原理分析

    這篇文章主要介紹了MySQL兩個(gè)表的親密接觸-連接查詢的原理,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • mySQL中replace的用法

    mySQL中replace的用法

    MySQL replace函數(shù)我們經(jīng)常用到,下面就為您詳細(xì)介紹MySQL replace函數(shù)的用法,希望對(duì)您學(xué)習(xí)MySQL replace函數(shù)方面能有所啟迪
    2012-09-09
  • Mysql DBA 20天速成教程

    Mysql DBA 20天速成教程

    準(zhǔn)備一臺(tái)pc,一根網(wǎng)線和20天無(wú)打擾的空余時(shí)間,把MySQL 5.1參考手冊(cè)設(shè)置為瀏覽器首頁(yè),按下面列表逐條學(xué)習(xí)即可,這本中文手冊(cè)包括基本上所有的內(nèi)容,補(bǔ)充知識(shí)google也都能查到,學(xué)習(xí)平臺(tái)采用linux
    2014-03-03
  • 三種東西永遠(yuǎn)不要放到mysql數(shù)據(jù)庫(kù)里

    三種東西永遠(yuǎn)不要放到mysql數(shù)據(jù)庫(kù)里

    這篇文章主要介紹了mysql數(shù)據(jù)庫(kù)不能存儲(chǔ)的三樣?xùn)|西,需要的朋友可以參考下
    2014-06-06
  • mysql8.0?.ibd文件恢復(fù)表結(jié)構(gòu)的實(shí)現(xiàn)

    mysql8.0?.ibd文件恢復(fù)表結(jié)構(gòu)的實(shí)現(xiàn)

    本文主要介紹了mysql8.0?.ibd文件恢復(fù)表結(jié)構(gòu)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-10-10
  • MySQL?實(shí)戰(zhàn)入門從"增刪改查"到"高效查詢"的操作

    MySQL?實(shí)戰(zhàn)入門從"增刪改查"到"高效查詢"的操作

    本文介紹了MySQL的核心CRUD操作,包括增刪改查的詳細(xì)語(yǔ)法和最佳實(shí)踐,還涵蓋了多表連接、分組過(guò)濾、子查詢、事務(wù)控制和索引管理等高級(jí)功能,感興趣的朋友跟隨小編一起看看吧
    2026-02-02
  • mysql community server 8.0.12安裝配置方法圖文教程

    mysql community server 8.0.12安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了mysql community Server 8.0.12安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08

最新評(píng)論

札达县| 娱乐| 沙田区| 台东市| 鲁甸县| 宜黄县| 曲松县| 邯郸县| 兴宁市| 通辽市| 维西| 怀宁县| 旬阳县| 锡林浩特市| 星子县| 金溪县| 察雅县| 额敏县| 南汇区| 大英县| 昭苏县| 诏安县| 安远县| 康乐县| 囊谦县| 桦南县| 鸡东县| 九龙县| 咸阳市| 高台县| 景洪市| 巧家县| 徐水县| 乌拉特中旗| 盖州市| 延长县| 临海市| 滕州市| 揭东县| 环江| 昌黎县|