数据库Log太多如何清理但是不影响mysql原来的表数据。

数据库Log太多如何清理但是不影响mysql原来的表数据。,第1张

如果想要关闭二进制mysql日志,可以在my.ini里把log-bin这行注释掉

要清二进制日志的话,在mysql开启了二进制日志的状态下,以root身份登录mysql以后执行下面两个命令之一:

PURGE

MASTER

LOGS

before

'2020-1-1'

清除指定日期之前的二进制日志

PURGE

MASTER

LOGS

TO

'mysql-bin.010'

清除指定文件编号之前的二进制日志

注意,如果没运行命令而是直接删除mysql-bin.xxx文件的话,mysql-bin.index里仍然记录了日志文件列表,这样以后再清日志时,就会因找不到列表中的日志文件而无法清理mysql日志

可以用bin目录中的mysqlbinlog.exe查看mysql二进制日志。

C:\>mysqlbinlog

mysql-bin.000001

如果my.ini中设置了字符集的话,可能会出现这以下这样的报错

mysqlbinlog:

unknown

variable

'default-character-set=gbk'

带上--no-defaults参数后即可解决

C:\>mysqlbinlog

--no-defaults

mysql-bin.000001

如果是要清理*.err日志的话,直接停止mysql数据库,将这个文件剪切走或者删除,重启mysql生成一个新的即可。

.err文件中实际是以文本方式保存的错误提示,可以直接用记事本打开查看。

db2diag命令,是用来查看db2数据库运行日志信息的,实际上,db2运行日志是记录在db2diag.log文件中,可以 通过此文件,查看记录的有关DB2数据库详细的错误信息,而db2diag只是查看该日志文件的一个小工具而已。db2数据库在运行过程中如果经常有报错的话,这个文件增长的会很快,需要定期清理,备份移走或者删除,通常有两种方法:

可以通过执行db2 get dbm cfg 来查看Diagnostic data directory path(DIAGPATH) 参数的设置。

1、使用db2diag工具,直接执行命令db2diag -A /db2diagbak (备份至/db2diagbak ,使用db2diag -h查看db2diag帮助),系统会自动移走db2diag.log并将备份的文件名添加上当前日期时间信息。

2、直接备份,在db2停止运行的情况下,将db2diag.log文件备份至其他文件系统,该文件删除后在db2启动后会自动重建。


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

原文地址:https://54852.com/sjk/6809236.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存