MYSQL日志的正确删除方法详解

作者:布鲁斯大人 时间:2024-01-22 13:18:02 

本文详细讲述了MYSQL日志的正确删除方法。分享给大家供大家参考,具体如下:

1.查找:


MySQL> show binary logs;
+—————-+———–+
| Log_name | File_size |
+—————-+———–+
| mysql-bin.000001 | 150462942 |
| mysql-bin.000002 | 125 |
| mysql-bin.000003 | 106 |
+—————-+———–+

2.删除bin-log(删除mysql-bin.000003之前的而没有包含mysql-bin.000003)


mysql> purge binary logs to 'mysql-bin.000003';
Query OK, 0 rows affected (0.16 sec)

3. 查询结果(现在只有一条记录了.)


mysql> show binlog events/G
*************************** 1. row ***************************
Log_name: mysql-bin.000003
Pos: 4
Event_type: Format_desc
Server_id: 1
End_log_pos: 106
Info: Server ver: 5.1.26-rc-log, Binlog ver: 4
1 row in set (0.01 sec)
(mysql-bin.000001和mysql-bin.000002已被删除)
mysql> show binary logs;
+—————-+———–+
| Log_name | File_size |
+—————-+———–+
| mysql-bin.000003 | 106 |
+—————-+———–+
1 row in set (0.00 sec)

(删除的其它格式运用!)


PURGE {MASTER | BINARY} LOGS TO 'log_name'
PURGE {MASTER | BINARY} LOGS BEFORE 'date'

用于删除列于在指定的日志或日期之前的日志索引中的所有二进制日志。这些日志也会从记录在日志索引文件中的清单中被删除,这样被给定的日志成为第一个。

例如:


PURGE MASTER LOGS TO 'mysql-bin.010′;
PURGE MASTER LOGS BEFORE '2008-06-22 13:00:00′;

清除3天前的 binlog


PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);

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

如果您有一个活性的从属服务器,该服务器当前正在读取您正在试图删除的日志之一,则本语句不会起作用,而是会失败,并伴随一个错误。不过,如果从属服务器是休止的,并且您碰巧清理了其想要读取的日志之一,则从属服务器启动后不能复制。当从属服务器正在复制时,本语句可以安全运行。您不需要停止它们。

要清理日志,需按照以下步骤:

1. 在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。

2. 使用SHOW MASTER LOGS获得主服务器上的一系列日志。

3. 在所有的从属服务器中判定最早的日志。这个是目标日志。如果所有的从属服务器是更新的,这是清单上的最后一个日志。

4. 制作您将要删除的所有日志的备份。(这个步骤是自选的,但是建议采用。)

5. 清理所有的日志,但是不包括目标日志。

在contab设置:

0 1 * * *  `mysql -uroot -e 'PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);'`

希望本文所述对大家MySQL数据库计有所帮助。

标签:MYSQL,日志
0
投稿

猜你喜欢

  • python自动发送邮件脚本

    2023-01-24 07:56:28
  • python利用urllib实现爬取京东网站商品图片的爬虫实例

    2022-05-01 12:32:56
  • python提示No module named images的解决方法

    2022-01-30 21:05:11
  • Python如何求取逆序数

    2022-07-16 07:16:57
  • Python创建多线程的两种常用方法总结

    2023-11-16 16:41:09
  • MySQL实现字段或字符串拼接的三种方式总结

    2024-01-22 04:23:47
  • python绘制简单折线图代码示例

    2022-06-28 11:08:31
  • nodejs简单实现TCP服务器端和客户端的聊天功能示例

    2024-05-03 15:55:56
  • Django模板语言 Tags使用详解

    2022-09-27 23:37:35
  • python pygame实现滚动横版射击游戏城市之战

    2021-07-11 00:32:51
  • 微信小程序(微信应用号)开发工具0.9版安装详细教程

    2023-06-12 23:33:37
  • PHP利用func_get_args和func_num_args函数实现函数重载实例

    2023-06-15 09:25:51
  • MySQL执行时间的查询

    2024-01-14 13:54:25
  • 浅谈Django自定义模板标签template_tags的用处

    2023-03-13 11:21:08
  • MySQL OOM 系列三 摆脱MySQL被Kill的厄运

    2024-01-13 19:14:40
  • CSS3的新特性

    2009-03-23 17:46:00
  • 将ASP纪录集输出成n列表格的方法

    2008-03-19 13:27:00
  • 使用Python开发游戏运行脚本成功调用大漠插件

    2021-03-09 21:05:53
  • SpringBoot Security使用MySQL实现验证与权限管理

    2024-01-22 15:32:00
  • python二维图制作的实例代码

    2021-09-17 21:29:35
  • asp之家 网络编程 m.aspxhome.com