首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >超大型日志文件

超大型日志文件
EN

Database Administration用户
提问于 2012-04-25 19:32:06
回答 1查看 10.8K关注 0票数 3

我正在运行Windows 2008 R2,并意外地执行了一个大型查询。接着,服务器的硬盘空间用完了。

我现在的管理员文档(log.log)中有一个超过18 is的文件。我似乎无法删除该文件,因为它只是再次出现。任何帮助。

当我删除日志时,它说我没有管理员特权。(我知道)

EN

回答 1

Database Administration用户

发布于 2012-04-25 20:23:00

由于打开文件的方式,MySQL在Windows中是一个很大的麻烦。

在Linux中,每当我看到一个日志文件填充了一个磁盘(即/var/ log /mysqld.log),我就尝试截断该文件。

代码语言:javascript
复制
echo -n > /var/log/mysqld.log

Linux和mysqld没有问题。另一方面,窗户是这样的。

我试图在我的桌面上的MySQL 5.5.12中执行这个操作,也就是说,我点击了错误文件,并得到了以下消息:

代码语言:javascript
复制
C:\>copy con C:\MySQL_5.5.12\data\LW-REDWARDS2.err
^Z
The process cannot access the file because it is being used by another process.
        0 file(s) copied.

C:\>

您必须转到任务管理器并终止mysqld进程。

然后,在释放了文件句柄的锁后,您可以尝试对日志文件进行访问。

然后,重新启动mysql

代码语言:javascript
复制
C:\> net start mysql

您必须留出时间让mysqld执行InnoDB崩溃恢复。

更新2012-04-25 17:37美国东部时间

需要磁盘空间将关闭信息写入mysql错误日志。在生成临时表(总是MyISAM)的任何mysql操作期间,总是需要磁盘空间。如果没有临时表的磁盘空间,会发生什么?

MySQL 5.0认证研究指南页408 409第29.2节公告11说:

如果在向MyISAM表中添加行时耗尽磁盘空间,则不会发生错误。服务器暂停操作,直到空间可用为止,然后完成操作。

尝试在没有可用磁盘空间的情况下标准关闭mysqld会使问题复杂化。只需终止进程,删除18G日志文件,再次启动mysql备份,并与InnoDB崩溃恢复生活。相信我,这比在Windows环境中寻找由于相同磁盘问题而无法工作的替代方案要好。

票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/17050

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档