|
[php 5 + mysql]
Verdan - 27-09-2006 16:37
Witam.
od jakiegoś czasu walczę z pewną rzeczą, i jakoś mi nie idzie, więc postanowiłem się poradzić, może ktoś z Was będzie miał jakiś pomysł.
Sprawa wygląda w ten sposób, że mam apache z php5. Php skompilowałem z opcjami:
'./configure' \ '--prefix=/usr/local/php5' \ '--with-apxs2=/usr/local/apache2/bin/apxs' \ '--with-mysql=/usr' \ '--with-jpeg-dir=/usr/local' \ '--with-zlib-dir=/usr' \ '--enable-mbstring' \ '--enable-sockets' \ '--with-iconv=/usr/local' \ '--with-zip' \ '--with-gd' \ '--with-png-dir=/usr/local/libpng-1.2.12' \ '--with-curl=/usr/local/libcurl-7.15.5' \ '--with-libxml-dir=/usr/local/libxml2-2.6.26' \ '--with-pdo-mysql' \ '--with-xmlrpc' \ '--with-imap' \ '--with-imap-ssl'
I pojawił się problem z obsługą mysql:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user: 'user@localhost' (Using password: YES) in /usr/local/apache2/htdocs/php5/mysql.php on line 4
Hasło i login do bazy są rzecz jasna poprawne (sprawdzałem wielokrotnie:)). Jak bym nie kombinował to jest access denied. Wersja mysql to:
mysql Ver 12.22 Distrib 4.0.27, for pc-linux-gnu (i686)
Najciekawsze jest to, że php4 też nie bardzo chce działać na tym mysql, jednak w przypadku php4 ratuje mnie wbudowana obsługa mysql która jakoś w php5 zginęła, albo przynajmniej ja nie mogę jej znaleźć. W momencie kiedy skompiluje php4 z zewnętrzną obsługą mysql pojawia się ten sam problem co wyżej, w przypadku php5.
Nagłówki mysqlowe są na swoim miejscu, nie są pomieszane z innymi wersjami:
bash-2.05# find /usr -name mysql_version.h /usr/include/mysql/mysql_version.h bash-2.05#
bash-2.05# grep VERSION /usr/include/mysql/mysql_version.h #define PROTOCOL_VERSION 10 #define MYSQL_SERVER_VERSION "4.0.27" #define MYSQL_BASE_VERSION "mysqld-4.0" #define MYSQL_VERSION_ID 40027 bash-2.05#
Zaznaczam, że nie jest to Debian i uaktualnienie mysql do nowszej wersji nie wchodzi aktualnie w grę. Z góry dziękuję za wszelkie sugestie.
Pozdrawiam, Verdan
dawidson - 29-09-2006 13:35
A sprawdzales czy dany uzytkownik moze sie zalogowac przez localhosta
Verdan - 29-09-2006 15:42
Nie raz i nie dwa. Z konsoli śmiga aż miło.
Pozdrawiam.
Witek Baryluk - 29-09-2006 17:54
Sprawdź ustawienia haseł i kont, szczególnie pole Host. Jeśli z php łączysz się do bazy podając pełną nazwe hosta, a nawet czasami localhost to się łączy z bazą nie poprzez sockety (szybkie i uzywa Host=localhost), ale przez TCP/IP (uzywa zwykle Host=%).
[ Dodano: 2006-09-29, 17:56 ] Jak to nie zadziała to nie mam osobiście innego pomysłu.
Verdan - 30-09-2006 11:57
Sprawdź ustawienia haseł i kont, szczególnie pole Host. Jeśli z php łączysz się do bazy podając pełną nazwe hosta, a nawet czasami localhost to się łączy z bazą nie poprzez sockety (szybkie i uzywa Host=localhost), ale przez TCP/IP (uzywa zwykle Host=%).
Problem nie leży w ustawieniach, tylko w supporcie mysql. Jak już poprzednio zaznaczyłem, że wszystko śmiga aż miło z konsoli jak i również z php4 z wbudowaną wewnętrzną obsługą mysql.
Pozdrawiam, Verdan
raku - 30-09-2006 22:40
to może użyj php5 i mysqla z backportów?
Verdan - 02-10-2006 12:29
To nie jest Debian, nie mam możliwości zmiany wersji oprogramowania.
zanotowane.pldoc.pisz.plpdf.pisz.plminister.pev.pl
|