Hi,
I have a problem opening the module mysql. I have no idea where it could come from... Here are some informations about my configuration :
In my folder /usr/local/lib/ser/modules, I have the 2 shared libraries libmysqlclient.so.10 and mysql.so
I had to copy the libmysqlclient.so.10 file in the following folder because SER complained the file didn't exist... : /usr/lib/
>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Here is my ser.cfg :
# ----------- global configuration parameters debug=7 fork=no log_stderror=yes check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) fifo="/tmp/ser_fifo"
# ------------------ module loading loadmodule "/usr/local/lib/ser/modules/mysql.so" loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so"
# ----------------- setting module-specific parameters modparam("usrloc", "db_mode", 2) modparam("usrloc", "db_url", "mysql://ser:heslo@localhost/ser") modparam("auth_db", "calculate_ha1", yes) modparam("auth_db", "password_column", "password") modparam("rr", "enable_full_lr", 1)
# ------------------------- request routing logic # Well... not necessary I think...
>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Here is the result of the command usr/local/sbin/ser -c :
0(2781) loading module /usr/local/lib/ser/modules/mysql.so 0(2781) ERROR: load_module: could not open module </usr/local/lib/ser/modules/mysql.so>: /usr/lib/libmysqlclient.so.10: undefined symbol: mysql_field_count 0(2781) parse error (14,13-49): failed to load module 0(2781) loading module /usr/local/lib/ser/modules/sl.so 0(2781) loading module /usr/local/lib/ser/modules/tm.so 0(2781) loading module /usr/local/lib/ser/modules/rr.so 0(2781) loading module /usr/local/lib/ser/modules/maxfwd.so 0(2781) loading module /usr/local/lib/ser/modules/usrloc.so 0(2781) loading module /usr/local/lib/ser/modules/registrar.so 0(2781) loading module /usr/local/lib/ser/modules/auth.so 0(2781) loading module /usr/local/lib/ser/modules/auth_db.so 0(2781) set_mod_param_regex: usrloc matches module usrloc 0(2781) set_mod_param_regex: found <db_mode> in module usrloc [/usr/local/lib/ser/modules/usrloc.so] 0(2781) set_mod_param_regex: usrloc matches module usrloc 0(2781) set_mod_param_regex: found <db_url> in module usrloc [/usr/local/lib/ser/modules/usrloc.so] 0(2781) set_mod_param_regex: auth_db matches module auth_db 0(2781) set_mod_param_regex: found <calculate_ha1> in module auth_db [/usr/local/lib/ser/modules/auth_db.so] 0(2781) set_mod_param_regex: auth_db matches module auth_db 0(2781) set_mod_param_regex: found <password_column> in module auth_db [/usr/local/lib/ser/modules/auth_db.so] 0(2781) set_mod_param_regex: rr matches module rr 0(2781) set_mod_param_regex: found <enable_full_lr> in module rr [/usr/local/lib/ser/modules/rr.so] 0(2781) find_export: found <mf_process_maxfwd_header> in module maxfwd_module [/usr/local/lib/ser/modules/maxfwd.so] 0(2781) find_export: found <sl_send_reply> in module sl_module [/usr/local/lib/ser/modules/sl.so] 0(2781) find_export: found <sl_send_reply> in module sl_module [/usr/local/lib/ser/modules/sl.so] 0(2781) find_export: found <record_route> in module rr [/usr/local/lib/ser/modules/rr.so] 0(2781) find_export: found <loose_route> in module rr [/usr/local/lib/ser/modules/rr.so] 0(2781) find_export: found <t_relay> in module tm [/usr/local/lib/ser/modules/tm.so] 0(2781) parse error (51,16-20): parse error 0(2781) parse error (51,16-20): bad command 0(2781) parse error (51,20-21): bad command 0(2781) parse error (51,20-21): bad command 0(2781) parse error (51,23-24): bad command 0(2781) parse error (51,23-24): bad command 0(2781) parse error (51,25-26): bad command 0(2781) find_export: found <www_authorize> in module auth_db [/usr/local/lib/ser/modules/auth_db.so] 0(2781) find_export: found <www_challenge> in module auth [/usr/local/lib/ser/modules/auth.so] 0(2781) find_export: found <save> in module registrar [/usr/local/lib/ser/modules/registrar.so] 0(2781) find_export: found <lookup> in module registrar [/usr/local/lib/ser/modules/registrar.so] 0(2781) find_export: found <sl_send_reply> in module sl_module [/usr/local/lib/ser/modules/sl.so] 0(2781) parse error (65,3-4): parse error 0(2781) parse error (65,3-4): ERROR: bad config file (10 errors) 0(2781) DEBUG: tm_shutdown : start 0(2781) DEBUG: tm_shutdown : empting hash table 0(2781) DEBUG: tm_shutdown: releasing timers 0(2781) DEBUG: tm_shutdown : removing semaphores 0(2781) DEBUG: tm_shutdown : done 0(2781) shm_mem_destroy 0(2781) destroying the shared memory lock
>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Please, help me, I am stuck here for more than 2 weeks ;-(
Thanks in advance Gwen
It's me once again...
I found an error in my ser.cfg (in the request routing logic paragraph)... I used to have 10 errors, I now have only 1 error : the module mysql still can't be loaded...
Thanks in advance :-) Gwen
Here is the "ser -c" result :
0(2813) loading module /usr/local/lib/ser/modules/mysql.so 0(2813) ERROR: load_module: could not open module </usr/local/lib/ser/modules/mysql.so>: /usr/lib/libmysqlclient.so.10: undefined symbol: mysql_field_count 0(2813) parse error (14,13-49): failed to load module 0(2813) loading module /usr/local/lib/ser/modules/sl.so 0(2813) loading module /usr/local/lib/ser/modules/tm.so 0(2813) loading module /usr/local/lib/ser/modules/rr.so 0(2813) loading module /usr/local/lib/ser/modules/maxfwd.so 0(2813) loading module /usr/local/lib/ser/modules/usrloc.so 0(2813) loading module /usr/local/lib/ser/modules/registrar.so 0(2813) loading module /usr/local/lib/ser/modules/auth.so 0(2813) loading module /usr/local/lib/ser/modules/auth_db.so 0(2813) set_mod_param_regex: usrloc matches module usrloc 0(2813) set_mod_param_regex: found <db_mode> in module usrloc [/usr/local/lib/ser/modules/usrloc.so] 0(2813) set_mod_param_regex: usrloc matches module usrloc 0(2813) set_mod_param_regex: found <db_url> in module usrloc [/usr/local/lib/ser/modules/usrloc.so] 0(2813) set_mod_param_regex: auth_db matches module auth_db 0(2813) set_mod_param_regex: found <calculate_ha1> in module auth_db [/usr/local/lib/ser/modules/auth_db.so] 0(2813) set_mod_param_regex: auth_db matches module auth_db 0(2813) set_mod_param_regex: found <password_column> in module auth_db [/usr/local/lib/ser/modules/auth_db.so] 0(2813) set_mod_param_regex: rr matches module rr 0(2813) set_mod_param_regex: found <enable_full_lr> in module rr [/usr/local/lib/ser/modules/rr.so] 0(2813) find_export: found <mf_process_maxfwd_header> in module maxfwd_module [/usr/local/lib/ser/modules/maxfwd.so] 0(2813) find_export: found <sl_send_reply> in module sl_module [/usr/local/lib/ser/modules/sl.so] 0(2813) find_export: found <sl_send_reply> in module sl_module [/usr/local/lib/ser/modules/sl.so] 0(2813) find_export: found <record_route> in module rr [/usr/local/lib/ser/modules/rr.so] 0(2813) find_export: found <loose_route> in module rr [/usr/local/lib/ser/modules/rr.so] 0(2813) find_export: found <t_relay> in module tm [/usr/local/lib/ser/modules/tm.so] 0(2813) find_export: found <www_authorize> in module auth_db [/usr/local/lib/ser/modules/auth_db.so] 0(2813) find_export: found <www_challenge> in module auth [/usr/local/lib/ser/modules/auth.so] 0(2813) find_export: found <save> in module registrar [/usr/local/lib/ser/modules/registrar.so] 0(2813) find_export: found <lookup> in module registrar [/usr/local/lib/ser/modules/registrar.so] 0(2813) find_export: found <sl_send_reply> in module sl_module [/usr/local/lib/ser/modules/sl.so] 0(2813) find_export: found <t_relay> in module tm [/usr/local/lib/ser/modules/tm.so] 0(2813) find_export: found <sl_reply_error> in module sl_module [/usr/local/lib/ser/modules/sl.so] ERROR: bad config file (1 errors) 0(2813) DEBUG: tm_shutdown : start 0(2813) DEBUG: tm_shutdown : empting hash table 0(2813) DEBUG: tm_shutdown: releasing timers 0(2813) DEBUG: tm_shutdown : removing semaphores 0(2813) DEBUG: tm_shutdown : done 0(2813) shm_mem_destroy 0(2813) destroying the shared memory lock
Hi,
I checked my MySQL-client package. So I installed MySQL-client-4.0.20-0.i386.rpm. I also had to install the package libmysql12. But, I still have the same problem with the load of mysql module...
I the folder /usr/lib, new files appeared : libmysqlclient_r.so.12@ libmysqlclient_r.so.12.0.0* libmysqlclient.so.10* libmysqlclient.so.12@ libmysqlclient.so.12.0.0*
What 'libmysqlclient' files do you have in your folder /usr/lib and /usr/local/lib/ser/modules/ ??
When I use "/usr/local/sbin/ser -c", the message of the error is a bit different : 0(2570) loading module /usr/local/lib/ser/modules/mysql.so 0(2570) ERROR: load_module: could not open module </usr/local/lib/ser/modules/mysql.so>: /usr/local/lib/ser/modules/mysql.so: undefined symbol: mysql_field_count 0(2570) parse error (14,13-49): failed to load module # ...bla bla... don't mind ERROR: bad config file (1 errors)
Thanks for help Gwen
Thank you for your help Zeus,
Here are the output of the commands :
[root@linux gwen]# ldd /usr/local/lib/ser/modules/mysql.so linux-gate.so.1 => (0xffffe000) libz.so.1 => /usr/lib/libz.so.1 (0x40028000) libc.so.6 => /lib/tls/libc.so.6 (0x40039000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
[root@linux gwen]# cat /etc/ld.conf cat: /etc/ld.conf: No such file or directory
[root@linux gwen]# cat /etc/ld.so.conf /usr/X11R6/lib /usr/lib/qt3/lib /usr/local/lib/ser/modules /usr/lib
Gwen
Gwen,
There is something wrong with your mysql.so file. Did you compile it yourself or download it somewhere? It doesn't look like mysql library is linked into it. My ldd output is like this:
sip:/usr/local/lib/ser/modules> ldd mysql.so libmysqlclient.so.10 => /usr/lib/libmysqlclient.so.10 (0x00bbb000) libz.so.1 => /usr/lib/libz.so.1 (0x00abf000) libc.so.6 => /lib/tls/libc.so.6 (0x003f3000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x0056a000) libnsl.so.1 => /lib/libnsl.so.1 (0x0029e000) libm.so.6 => /lib/tls/libm.so.6 (0x00111000) libnss_files.so.2 => /lib/libnss_files.so.2 (0x00a7d000) libnss_dns.so.2 => /lib/libnss_dns.so.2 (0x006dd000) libresolv.so.2 => /lib/libresolv.so.2 (0x00967000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x0036b000)
Note the first line states that mysql.so should dynamically load the mysql library from /usr/lib/libmysqlclient.so.10. It is absent from your output. Either recompile the module or download another copy from the FTP server.
Zeus
Hi Zeus and other serusers,
The mysql.so file is the one I got with SER.(ser-0.8.12_linux_i386.tar.gz, if I remember...).
Could you tell me what output you get with this command : # ldconfig -v |grep mysql ldconfig: Path `/usr/lib' given more than once libmysqlclient_r.so.12 -> libmysqlclient_r.so.12.0.0 libmysqlclient.so.12 -> libmysqlclient.so.12.0.0 libmysqlclient.so.10 -> libmysqlclient.so.10
Thanks, Gwen
I finally found the solution...
First, I don't know why but I had a strange link file (libmysqlclient.so.10) in my folder /usr/local/lib/ser/modules. I deleted it and then I got the following result of the command "ldd mysql.so" : linux-gate.so.1 => (0xffffe000) libmysqlclient.so.10 => /usr/lib/libmysqlclient.so.10 (0x40028000) libz.so.1 => /usr/lib/libz.so.1 (0x4005f000) libc.so.6 => /lib/tls/libc.so.6 (0x40070000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x401b8000) libnsl.so.1 => /lib/libnsl.so.1 (0x401e5000) libm.so.6 => /lib/tls/libm.so.6 (0x401f8000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
Now, I have the same result than Zeus but I didn't have any /usr/lib/libmysqlclient.so.10...
When I installed the libmysql12, I obtained new files in /usr/lib/ (libmysqlclient.so.12 and some others). When SER try to load mysql.so, it looks for the library libmysqlclient.so.10 and obviously can't find it. So I made a link with the following command : ln -s libmysqlclient.so.12 libmysqlclient.so.10
And now, SER can load the mysql module !!
Thanks for your help Zeus !! Bye, Gwen