[Mod_log_sql] problem getting work mod_log_sql under gentoo with apache2

Bob Apthorpe apthorpe+sa at cynistar.net
Tue May 2 09:55:10 EDT 2006


Hi,

blue-dragon wrote:
> here I am again,
> i think now i know whats the error by take a look at the startuperror
> log from apache.
> The error is by trying to load the module;
> i tried two diferent versions witch i found on some internet sites:
> here are the two versions with the errors i become:
> 
> LoadModule log_sql_mysql_module         modules/mod_log_sql_mysql.so
> 
> Cannot load /usr/lib/apache2/modules/mod_log_sql_mysql.so into server:
> /usr/lib/apache2/modules/mod_log_sql_mysql.so: undefined symbol:
> log_sql_register_driver
> 
> LoadModule sql_log_module               libexec/mod_log_sql.so
> 
> Cannot load /usr/lib/apache2/libexec/mod_log_sql.so into server:
> /usr/lib/apache2/libexec/mod_log_sql.so: cannot open shared object file:
> No such file or directory
> 
> Can anybody help my?
> I think its an very easy error but i never tried to use a module or
> configure my apache so i dont understand wats going wrong

Make sure that log_sql is loaded before log_sql_mysql. Also, use
absolute paths to specify the modules to load, e.g.:

LoadModule log_sql_module /usr/lib/apache2-prefork/mod_log_sql.so
LoadModule log_sql_mysql_module
/usr/lib/apache2-prefork/mod_log_sql_mysql.so

instead of

LoadModule log_sql_mysql_module         modules/mod_log_sql_mysql.so
LoadModule sql_log_module               libexec/mod_log_sql.so

This error message looks like it's caused by modules being loaded in the
wrong order:

> Cannot load /usr/lib/apache2/modules/mod_log_sql_mysql.so into server:
> /usr/lib/apache2/modules/mod_log_sql_mysql.so: undefined symbol:
> log_sql_register_driver

I've been bitten by this, especially when upgrading. The solution was to
load log_sql_module before log_sql_mysql_module. Think of it as loading
the generic SQL logging module followed by the database-specific module.

The second error message is more straightforward:

> Cannot load /usr/lib/apache2/libexec/mod_log_sql.so into server:
> /usr/lib/apache2/libexec/mod_log_sql.so: cannot open shared
> object file: No such file or directory

Does /usr/lib/apache2/libexec/mod_log_sql.so exist? If not, you need to
change the path or put the file there. This is why specifying an
absolute module path helps - there's no guessing where
libexec/mod_log_sql.so is supposed to be loading from.

hth,

-- Bob



More information about the Mod_log_sql mailing list