Peter Horn wrote:
Hi All,
I've been running Apache 2.2.9 / PHP 5.2.6 / Win XP SP3 with 3 named
vhosts for about a year with no real problems. Recently I added a
fourth vhost to run a Drupal site. This involved adding mySQL, and it
all worked after the usual few setup iterations. After the site was
running happily for a couple of weeks, I revisited the setup and
removed 'DBDPersist Off' from the vhost. After I did this, I get the
following messages in the error log at startup, even though the site
subsequently appears to work correctly and there are no 'runtime' errors:
[Sat Aug 15 12:25:22 2009] [error] (OS 126)The specified module could
not be found. : DBD: mod_dbd not compatible with APR in get_driver
[Sat Aug 15 12:25:22 2009] [error] (OS 126)The specified module could
not be found. : DBD: failed to initialise
That means it's failing to load the database driver, and the error
is one that mod_dbd doesn't know about, so it can't report it
correctly to you. That's a bug, albeit a minor one (the error
message should be better).
Since Windows error 126 means nothing to me (it would be great if
you or anyone could say), it would be helpful to be able to
diagnose exactly why it can't load the mysql driver. Do you in
fact have the MySQL driver installed?
The fact your application works presumably means it isn't using
DBD, and PHP is connecting to MySQL using a pre-DBD method.
So you should be able to remove the DBD configuration.
If I'm wrong about that, then something strange is going on
and will need investigating!
As regards your questions, it's up to an application whether
it uses DBD or does its own thing. WAMP is neither more nor
less likely to use it than Unix/Linux based platforms.
For a single application it doesn't usually matter much,
but if you have several separate MySQL applications that
don't use DBD then you're placing a lot of extra load
on your server.
--
Nick Kew
1. Windows error 126 is, to quote M$
126 The specified module could not be found. ERROR_MOD_NOT_FOUND
Not very informative...
2. You're right. I don't need mod_dbd.
3. When I get a bit more time, I'll explore the circumstances of my
original issue - turning on DBDPersist in a vhost triggers the
module-not-found error - and post a more specific description. I presume
LogLevel debug will be useful around module loading, or is there some
other magic setting I should use?
Peter