【问题标题】:mod_perl application having weird intermittent mysql driver issuesmod_perl 应用程序有奇怪的间歇性 mysql 驱动程序问题
【发布时间】:2010-12-10 17:48:10
【问题描述】:

在完全随机的时间,我的 mod_perl 脚本无缘无故崩溃,这是我得到的错误:

[error] install_driver(mysql) failed: Attempt to reload DBD/mysql.pm aborted.\nCompilation failed in require at (eval 20) line 3.\n\n at

但等待它变得更好。有时是这样:

[error] install_driver(mysql) failed: Can't load '/usr/lib/perl5/auto/DBD/mysql/mysql.so' for module DBD::mysql: /usr/lib/perl5/auto/DBD/mysql/mysql.so: failed to map segment from shared object: Cannot allocate memory at /usr/lib/perl/5.10/DynaLoader.pm line 196.\n at (eval 17) line 3\nCompilation failed in require at (eval 17) line 3.\nPerhaps a required shared library or dll isn't installed where expected\n at

请注意,当我处于开发模式 atm 时,我是唯一一个使用此应用程序的人,所以我怀疑这是并发问题。

否则一切都很好,这很奇怪。我在运行 Debian 5.0 和 apache 2 和 mysql 5.0.51a-24+lenny2 的 VPS 上

感谢您的帮助!

【问题讨论】:

    标签: mysql mod-perl2


    【解决方案1】:

    您是否已加载 Apache::Reload?您是从 debian apt 还是从 CPAN 运行 DBD::MySQL?

    【讨论】:

    • 我的 DBD::MYSQL 来自 debian apt(就像我系统上的所有其他东西一样。)这里有一个 Reload.pm:/usr/share/perl5/Apache2/Reload.pm 但没有' mods-available 中的 reload 模块。我应该使用那个吗?每次更改任何脚本时,我都会重新启动 apache。但是,我确实通过每分钟使用一次“卷曲”页面的 cron 作业访问服务器来“解决”问题!?感谢您的回复!
    • Apache2::Reload 将(尝试)重新加载已更改的模块。它有时对开发很有用,因为它可以节省每次进行编辑时重新启动 apache。但是有些模块不喜欢被重新加载。我不确定每分钟请求一个页面如何解决上述问题,除非它只是意味着您正在与不同的实例交谈。如果您处于单进程 (-X) 模式,会发生这种情况吗?
    猜你喜欢
    • 1970-01-01
    • 2011-07-23
    • 2010-09-16
    • 2010-12-21
    • 2012-08-24
    • 1970-01-01
    • 2012-11-22
    • 2011-03-10
    • 1970-01-01
    相关资源
    最近更新 更多