You'll have to pardon me if this is an idiot question. Still pretty new to the whole apache admin scene. The issue i'm having is when i go to load the mod_auth_mysql module. I get the following error when trying to install 3.0.0.
Cannot load /usr/lib/apache2/modules/mod_auth_mysql.so into server: /usr/lib/apache2/modules/mod_auth_mysql
.so: undefined symbol: make_scrambled_password_323
This obviously only happens when i include it in my httpd.conf.
Do you have any other products which also use MySQL running on Apache? For instance - PHP?
The reason I ask - I suspect another product is loading an older version of the MySQL libraries - one which does not contain make_scrambled_password_323.
The solution to this problem is to compile all products wiht the same version of MySQL. It's not a MySQL, PHP or mod_auth_mysql problem; rather it's a problem that if you were to have two versions of the same library loaded the OS wouldn't know which one to use.
Jerry
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hmm.. that's what i was worried about. I've tried to be pretty careful about that, but i'll just have to go through and see which one out of the packages is picking up the wrong library. Thanks for the info jerry.
ben
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The first place I would recommend looking is in PHP. Create a page with just:
<?php
phpinfo();
?>
And name it with a .php extension (do not leave it in a publicly accessable directory!). Display the page and go down to the MySQL section. There it will display the MySQL Client version. See if it's the one you expect.
If this doesn't show a MySQL section, then PHP probably isn't compiled with MySQL support and you'll have to look to other packages.
Jerry
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Your header file is saying you're using a recent version of MySQL (SCRAMBLED_PASSWORD_CHAR_LENGTH_323 is defined), but you're library doesn't the matching function.
Check to see if you have more than one version of the mysql libraries on your system.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
You'll have to pardon me if this is an idiot question. Still pretty new to the whole apache admin scene. The issue i'm having is when i go to load the mod_auth_mysql module. I get the following error when trying to install 3.0.0.
Cannot load /usr/lib/apache2/modules/mod_auth_mysql.so into server: /usr/lib/apache2/modules/mod_auth_mysql
.so: undefined symbol: make_scrambled_password_323
This obviously only happens when i include it in my httpd.conf.
My build was..
/usr/lib/apache2/bin/apxs -c -I/usr/include/mysql -lmysqlclient -lm -lz mod_auth_mysql.c
/usr/lib/apache2/build/libtool --silent --mode=compile gcc -prefer-pic -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -g -O2 -pthread -I/usr/lib/apache2/include -I/usr/lib/apache2/include -I/usr/lib/apache2/include -I/usr/include/mysql -c -o mod_auth_mysql.lo mod_auth_mysql.c && touch mod_auth_mysql.slo
/usr/lib/apache2/build/libtool --silent --mode=link gcc -o mod_auth_mysql.la -lmysqlclient -lm -lz -rpath /usr/lib/apache2/modules -module -avoid-version mod_auth_mysql.lo
Then in mod install gave me no errors, so i'm not really sure what's going on.
System:
Apache/2.0.54 (Unix) DAV/2 PHP/4.3.11
mysql Ver 14.7 Distrib 4.1.12, for pc-linux-gnu (i686) using readline 4.3
Red Hat Linux release 9 (Shrike) 2.4.25-001
Hi, Benjamin,
Do you have any other products which also use MySQL running on Apache? For instance - PHP?
The reason I ask - I suspect another product is loading an older version of the MySQL libraries - one which does not contain make_scrambled_password_323.
The solution to this problem is to compile all products wiht the same version of MySQL. It's not a MySQL, PHP or mod_auth_mysql problem; rather it's a problem that if you were to have two versions of the same library loaded the OS wouldn't know which one to use.
Jerry
I too am having this problem, but I just built PHP and Apache with the same MySQL version... According to my ./configure output:
checking for MySQL support... yes
and I'm pointing both PHP and the module build to the same location.
Any ideas?
Hmm.. that's what i was worried about. I've tried to be pretty careful about that, but i'll just have to go through and see which one out of the packages is picking up the wrong library. Thanks for the info jerry.
ben
Ben,
The first place I would recommend looking is in PHP. Create a page with just:
<?php
phpinfo();
?>
And name it with a .php extension (do not leave it in a publicly accessable directory!). Display the page and go down to the MySQL section. There it will display the MySQL Client version. See if it's the one you expect.
If this doesn't show a MySQL section, then PHP probably isn't compiled with MySQL support and you'll have to look to other packages.
Jerry
Don,
Are you sure you're using the correct library?
Your header file is saying you're using a recent version of MySQL (SCRAMBLED_PASSWORD_CHAR_LENGTH_323 is defined), but you're library doesn't the matching function.
Check to see if you have more than one version of the mysql libraries on your system.
You work correct... I had an old library lurking in there... now I have a new problem:
"Invalid command 'Auth_MySQL_Info', perhaps mis-spelled or defined by a module no
t included in the server configuration"
Don,
Please see the CONFIGURE file.
Auth_MySQL_Info is not a valid command for this version of mod_auth_mysql; it's for another one running around on the internet.