gpt4 book ai didi

php - Apache httpd 错误和崩溃

转载 作者:行者123 更新时间:2023-11-29 01:47:59 25 4
gpt4 key购买 nike

我在 Win XP 上安装了 WAMP 2.0 服务器。 Apache 版本:2.2.11PHP 版本:5.3MySQL:5.1.36

我在 mysql 中有大约 11 个表。我的网络应用程序(HTML/Jquery/PHP/MySQL)的每次运行都会在 2 个表中填充大约 100 行。(其中一个表有 2 个 Long blob 列,其中上传的数据大小高达 20MB,我更改了 Max_allowed_pa​​cket 大小到 my.ini 文件中的 32M )

该应用程序可以正常工作大约 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 > 行)。问题仍然存在。

我正在使用 PDO PHP 更新表格。

任何人都可以指导我,因为这正在成为障碍。

问候,米顿

最佳答案

问题:

我怀疑您遇到了 2GB 的文件大小瓶颈。您的设置有 2 个问题:

  • 第一个问题:您在 Windows 上运行它。
  • 第二个问题:您在 Windows 上运行它。 :-)

原因:

撇开玩笑,Mysql 将数据存储在其根文件夹中(例如 C:\Program Files\MySQL\MySQL Server 5.0\data)。每个子文件夹对应于您的 MySQL 实例中的一个数据库。在每个文件夹中都有一个扩展名为 .frm 的文件,它对应于您的表。查看您存储上传内容的表是否接近 2 GB 的限制。考虑到您有一个存储上传的列 UP TO 20 Mb * 1500 行 - 大约 2 GB(假设您的大部分文件小于 20 MB)不幸的是,Windows XP 确实很难处理文件大于 2GB - 文件系统和操作系统的限制。这与人们的前景出现问题的原因相同 - 因为他们不整理或清理电子邮件。

解决方案:

第三个问题——你在数据库中存储二进制数据——这绝不是一个好主意。将它存储在磁盘上 - 并在您的数据库中保留对它的引用(名称或路径)。或者,如果您迁移到支持更大文件大小的 **nix* 系统,您可以保留当前设置一段时间。但是,将这种大小的二进制数据直接存储在您的数据库中仍然是一个坏主意。它还使您的数据库搜索速度变慢,备份速度变慢(因为 MySQL 中没有简单的增量备份)

希望对您有所帮助。

编辑:

我忘了提及,因为您使用的是 WAMP,所以您的 MySQL 文件夹将位于您的 WAMP 安装文件夹中。默认情况下,我认为它应该在 c:\wamp\mysql\data 中——但我记不太清了。我通常在 Windows 上使用 XAMMP。

关于php - Apache httpd 错误和崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1807276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com