题
我有一个WAMP的2.0服务器安装在赢得XP。Apache版本:2.2.11 PHP Version:5.3 MySQL:5.1.36
我有大约11表在mysql.每个运行我的网应用程序(HTML级/PHP/MySQL)填补了大约100行在2的表格。(一的表2中的长blob列的数据的尺寸高达20MB被上载,我已经改变了导致大小到32米在我的。ini file)
该应用程序的工作,现为大约3个星期直到数目排在一个表达>1500年。
然后我看到httpd崩溃的消息(Apache httpd遇到的错误,需要关闭 )和它说,内存非法相对 请在下面找到一些记录
szAppName : httpd.exe szAppVer : 2.2.11.0 szModName : php5ts.dll
szModVer : 5.3.0.0 offset : 0000c309
C:\DOCUME~1\blrcom\LOCALS~1\Temp\WERc677.dir00\httpd.exe.mdmp
C:\DOCUME~1\blrcom\LOCALS~1\Temp\WERc677.dir00\appcompat.txt
如果我清楚这两个表(1500>行)。仍有问题。
我使用公设辩护人PHP更新的表格。
任何人都可以引导我因为这是成为一个拦截。
问候, 大额牛
解决方案
问题:
我有一个怀疑,你打2GB的文件大小墙。2问题的安装:
- 第一个问题:你正在运行这个月的窗口。
- 第二个问题:你正在运行这个月的窗口。:-)
理由:
开开玩笑,Mysql数据存储在其根文件夹(例如C:\Program 文件\MySQL\MySQL Server5.0\数据)。每个子文件夹中的对应数据库在你的实例MySQL.在每一个文件夹中还有一个文件的扩展 .frm
这相当于你的表。看看如果表你是储存你的上载在接近2GB限制。考虑到你有一列,用于储存上传 起来 20Mb*1500行-这大约是周围2Gb(假设大多数文件都小于20MB)不幸的是Windows XP有很艰难的时期处理的文件比2GB-限制的文件系统和操作系统。这是同样的原因,人们得到的麻烦,他们的展望,因为他们不进行排序或清理自己的电子邮件。
方案:
第三个问题-你是储存的二进制数据库-不是个好主意。存放在磁盘和只要保持参考了(名称或道路)在数据库中。或者你可以保持你的当前设置一段时间如果你移动到**尼克斯*系统,支持大了文件的大小。但是,这仍然是一个坏主意储存的二进制数据的尺寸您的数据库。它还使得数据库的搜索速度较慢,以及备份慢得多(由于没有容易的增量备在MySQL)
希望这有所帮助。
编辑:
我忘了说了,因为你使用WAMP,你MySQLfolder会在你的*瓦姆普的办公室安装的文件夹。默认情况下,我认为它应该是在c:\wamp\mysql\data -但是我不记得肯定的。我通常使用XAMMP。
其他提示
有很多可能的原因为什么发生这种情况。你保持一个列有所有20MB对象的记忆?因为生长你可以增加每个进程的尺寸的apache到一点你在哪里出来的记忆。