15 Nov
jaja, nachdem PHP 4 und PHP 5 endlich gemeinsam auf einem apache server laufen spinnt mysql rum. Client does not support authentication protocol spuckt php als fehlermeldung aus, wenn man mit der PHP 4 version versucht mit der datenbank zu connecten. das ganze liegt daran, dass mysql ab version 4 die passwoerter anders speichert, die client version von php aber irgendwas um version 3 ist. um das zu aendern gibt es in mysql die funktion OLD_PASSWORD().
einfach rein in mysql mit
mysql -u root -p
dort
UPDATE mysql.user
SET password=OLD_PASSWORD('somepassword')
WHERE user='someuser';
entsprechend someuser und somepassword austauschen. der user ist in der testumgebung meistens root.
dannach noch schnell
flush privileges;
und auch dieses problem sollte behoben sein. kein passwort zu setzen habe ich leider nicht hinbekommen, aber auch egal, das kann ich schnell in allen projekten anpassen.
nachtrag: auch hier noch ein kleiner nachtrag zum bereits geschriebenen. wenn ihr das so macht, wie oben beschrieben, laeuft das ganze zwar unter php4, allerdings kann sich der php5 client dann nicht mehr auf dem mysql server anmelden und meckert rum, dass das alte verfahren fuer das passwort benutzt wurde. also: legt euch einfach eine kopie eures jetztigen users an, z.b. nennt ihr den dann ‘root4′ und wendet auf diesen user die oben beschriebenen schritte an. ihr muesst dann nur noch in eurem php skript benutzername und passwort anpassen und dann sollte endlich alles laufen.
Kommentar schreiben