如何删除MYSQL日志文件及关闭日志功能

如何删除MYSQL日志文件及关闭日志功能,第1张

一、关闭MySql日志方法:

找到MySql的配置文件,然后注释以下两行即可(即在行首添加#符号就好了)。然后重启MySql服务

log-bin=mysql-bin

binlog_format=mixed

二、删除日志

1)手动删除日志

手动删除日志的基本语法如下:

PURGE {MASTER | BINARY} LOGS TO'log_name'

PURGE {MASTER | BINARY} LOGSBEFORE 'date'

①、查看当前日志:

show binary logs

②、查看第一个二进制日志

show binlog events

③、删除指定日志之前的日志

PURGE MASTER LOGS TO'mysql-bin.010'

④、删除指定日期之前的日志

PURGE MASTER LOGS BEFORE'2018-7-12 13:00:00'

⑤、删除N天前的日志

PURGE MASTER LOGS BEFOREDATE_SUB( NOW( ), INTERVAL N DAY)如下面的语句可以清除 7 天前的binlog,

PURGE MASTER LOGS BEFOREDATE_SUB( NOW( ), INTERVAL 7 DAY)

注意:BEFORE变量的date自变量可以为'YYYY-MM-DDhh:mm:ss'格式。MASTER和BINARY是同义词。

2)自动删除日志

①、第一种方式:设置日志保存时间

修改MySql的配置文件,设置以下属性:expire_logs_days=10。这个值根据实际情况来定。当然对于生产环境修改配置文件需要重启,这个代价可能会很大,还可以通过这个命令来修改生效set global expire_logs_days = 10

②、第二种方式:设置定时任务

0 3 * * *  `mysql -uroot -e 'PURGE BINARY LOGS BEFOREDATE_SUB( NOW( ), INTERVAL 7 DAY)'`

上面的命令是每天凌晨3点删除7天前的binlog:

删除日志:

执行:/usr/local/mysql/bin/mysql -u root -p

输入密码登录后再执行:reset master

再输入:quit 退出mysql命令模式。

彻底禁用MySQL日志:修改/etc/my.cnf 文件,

找到log-bin搜索=mysql-binbinlog_format=mixed再这两行前面加上#,

将其注释掉,再执行/etc/init.d/mysql restart即可。

或直接去目录/usr/local/mysql/var/删除日志文件即可正常使用!

之前有做过一个 binlog 压缩能节约多少空间的测试,效果上看还是比较理想的,可以节约一半以上的空间。但是这个又引出了一个新的问题,那就是这个功能对性能有多大影响呢?于是我又在测试环境试了一下,测试环境的物理配置如下。

根据之前的经验这套测试环境在 120 个表 + 240 个并发的情况,可以取得一个性能上的极大值;所以在这里就直接使用这个作为测试压力。

8.0.19 场景

第一步:安装。

dbma-cli-single-instance --port=3306 --max-mem=131072 \--pkg=mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz install

第二步:创建测试用户。

create user sysbench@'%' identified by 'sysbench'create database tempdbgrant all on tempdb.* to sysbench@'%'

第三步:填充数据并进行压力测试。

sysbench --mysql-host=192.168.100.10  --mysql-port=3306 --mysql-user=sysbench \--mysql-password=sysbench --tables=120 --table_size=100000 --mysql-db=tempdb \--time=3600 --threads=240 oltp_point_select prepare

sysbench --mysql-host=192.168.100.10  --mysql-port=3306 --mysql-user=sysbench \--mysql-password=sysbench --tables=120 --table_size=100000 --mysql-db=tempdb \--time=3600 --threads=240 oltp_point_select run

性能表现。

资源消耗情况。

8.0.20 + binlog 压缩

第一步:安装。

dbma-cli-single-instance --port=3306 --max-mem=131072 \--pkg=mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz install

第二步:创建测试用户。

create user sysbench@'%' identified by 'sysbench'create database tempdbgrant all on tempdb.* to sysbench@'%'

-- dbm-agent 默认会开启 binlog 压缩show global variables like 'binlog_transaction_compression%'+-------------------------------------------+-------+| Variable_name                             | Value |+-------------------------------------------+-------+| binlog_transaction_compression            | ON    || binlog_transaction_compression_level_zstd | 3     |+-------------------------------------------+-------+2 rows in set (0.00 sec)

第三步:填充数据并进行压力测试。

sysbench --mysql-host=192.168.100.10  --mysql-port=3306 --mysql-user=sysbench \--mysql-password=sysbench --tables=120 --table_size=100000 --mysql-db=tempdb \--time=3600 --threads=240 oltp_point_select prepare

sysbench --mysql-host=192.168.100.10  --mysql-port=3306 --mysql-user=sysbench \--mysql-password=sysbench --tables=120 --table_size=100000 --mysql-db=tempdb \--time=3600 --threads=240 oltp_point_select run

性能表现。

资源消耗情况。

8.0.20 + binlog 不压缩

第一步: 关闭 binlog 压缩功能。

set @@global.binlog_transaction_compression='OFF'

show global variables like 'binlog_transaction_compression%'+-------------------------------------------+-------+| Variable_name                             | Value |+-------------------------------------------+-------+| binlog_transaction_compression            | OFF   || binlog_transaction_compression_level_zstd | 3     |+-------------------------------------------+-------+2 rows in set (0.01 sec)

第二步:进行压力测试。

sysbench --mysql-host=192.168.100.10  --mysql-port=3306 --mysql-user=sysbench \--mysql-password=sysbench --tables=120 --table_size=100000 --mysql-db=tempdb \--time=3600 --threads=240 oltp_point_select run

性能表现。

资源消耗情况。

结论

开启 binlog 压缩会对性能有影响,大概会让性能下降 1%,cpu 多消耗 1%。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5902389.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存