Hello, I have RH 6.1. I have mysql 3.22.25 version binary installation databases are in /var/lib/mysql binaries in /usr/bin/mysql etc /var/lib/mysql/mysql.pid /var/lib/mysql/mysql.sock and rpm packages: perl-DBI-1.13-1, perl-DBD-mysql-mysql-1.22.10-1 perl-5-5.0050 and binary installation of php 4.04pl and it was working perfectly (I have web page written in php and perl),
two day ago I have installed from source (to old RH to get binary installation) mysql 3.23.55. It compiled perfectly and was installed in /usr/local/mysql databases in /usr/local/mysql/var /tmp/mysql.sock
I have stoped old mysql server and run new one.
I could connect with new /usr/local/mysql/bin/mysql client (old one was not working) and select data from moved databases. problem is that web pages are not working any more, after running by hand some script (which use to work) I'm getting: " Date::Parse is not available but requested by Class::Date DBI->connect(database=class;host=localhost) failed: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111) at ./class line 27 Can't call method "prepare" on an undefined value at ./class line 156. " it looks to me that that it somehow is trying to connect to old not working mysql database. because now mysql.sock is in /tmp/mysql.sock I have found somewhere that pearl script I can add directive: mysql_read_default_file $dbh = DBI->connect("DBI:mysql:$database" . ";mysql_read_default_file=$ENV{HOME}/.my.cnf", $user, $password); I did and it worked, but I do not know what to do in php scripts (I do not know php I'm admin) and it is daunting job to change manually all perl scripts.
so far my problems my faults: but now we have bug: ------------------------------------ bacause I have problem with mysql.socket which was in old version in /var/lib/mysql now in /tmp
so
./configure --prefix=/usr/local/mysql \ --with-unix-socket-path=/var/lib/mysql/mysql.sock make;make install etc.
should produce mysql with socket in /var/lib/mysql dictionary instead of /tmp but once again I have got socket in /tmp/mysql.sock
So this directive is not working.
I have solved my problem by replacing in /etc/my.conf socket = /tmp/mysql.sock with socket = /var/lib/mysql/mysql.sock
and now it is working. But it does not change the fact that directive --with-unix-socket-path=/var/lib/mysql/mysql.sock is not working.
It does work, I use it all the time to specify where the socket file for each of my several-dozen-different-servers should be. :-)
However, after you recompile MySQL (and the client library), you'll also need to rebuild DBD::mysql and PHP so that they link in the new client library. For PHP, you can also specify the socket path in your php.ini file if you don't want to recompile:
mysql.default_socket = /path/to/socket/file;
--------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive)
To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
--------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive)
To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php