我正在运行Windows 2008 R2,并意外地执行了一个大型查询。接着,服务器的硬盘空间用完了。
我现在的管理员文档(log.log)中有一个超过18 is的文件。我似乎无法删除该文件,因为它只是再次出现。任何帮助。
当我删除日志时,它说我没有管理员特权。(我知道)
发布于 2012-04-25 20:23:00
由于打开文件的方式,MySQL在Windows中是一个很大的麻烦。
在Linux中,每当我看到一个日志文件填充了一个磁盘(即/var/ log /mysqld.log),我就尝试截断该文件。
echo -n > /var/log/mysqld.logLinux和mysqld没有问题。另一方面,窗户是这样的。
我试图在我的桌面上的MySQL 5.5.12中执行这个操作,也就是说,我点击了错误文件,并得到了以下消息:
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
C:\> net start mysql您必须留出时间让mysqld执行InnoDB崩溃恢复。
需要磁盘空间将关闭信息写入mysql错误日志。在生成临时表(总是MyISAM)的任何mysql操作期间,总是需要磁盘空间。如果没有临时表的磁盘空间,会发生什么?
据MySQL 5.0认证研究指南页408 409第29.2节公告11说:
如果在向MyISAM表中添加行时耗尽磁盘空间,则不会发生错误。服务器暂停操作,直到空间可用为止,然后完成操作。
尝试在没有可用磁盘空间的情况下标准关闭mysqld会使问题复杂化。只需终止进程,删除18G日志文件,再次启动mysql备份,并与InnoDB崩溃恢复生活。相信我,这比在Windows环境中寻找由于相同磁盘问题而无法工作的替代方案要好。
https://dba.stackexchange.com/questions/17050
复制相似问题