phpMyAdmin 2.8.1 will nicht

Wombat

Gast
Hallo an alle!

Ich bin etwas verzweifelt. Ich versuche nun schon fast zwei Tage lang eine Testumgebung zu installieren und meine phpMyAdmin Installtion zur Zusammenarbeit zu bewegen, aber irgendwie geht es nicht. Ich habe auf meinem iBook G4 den Apache Server und PHP aktiviert. Anschliessend habe ich MySQL 4.1.20-standard installiert. Ich kann mich über die MySQL-Konsole auch einloggen, Datenbanken anlegen/wechseln etc. MySQL startet automatisch bei jedem Start des Rechners.

Ich habe die Version phpMyAdmin 2.8.1 in den root-Ordner (Web-Sites) kopiert und anschliessend die config.inc.php angepasst. Dazu habe ich - wie ich es auch aus vorhergehenden Versionen von phpMyAdmin gewohnt war - meinen MySQL Usernamen und das dazugehörige Passwort und den Host (localhost) eingetragen. Damit ging es aber nicht. Es gibt zu dieser Version jetzt auch eine setup.php, welche die config.inc.php automatisch gemäss den Eingaben generieren soll, aber auch so funktioniert es nicht. Ich bekomme immer folgenden Fehler, wenn ich versuche auf phpMyAdmin zuzugreifen:


Wenn ich in der MySQL-Konsole den Status abfrage erhalte ich folgende Informationen:


Ich habe es schon mit connect_type socket als auch tcp versucht, aber nichts geht. Ich finde den Fehler einfach nicht.

Ich hänge Euch mal meine config.inc.php an, vielleicht wird hier jemand daraus schlau:
<?php
/*
* Generated configuration file
* Generated by: phpMyAdmin 2.8.1 setup script by Michal ƒåiha?ô <[email protected]>
* Version: $Id: setup.php,v 1.23.2.8.2.2 2006/05/15 07:57:09 nijel Exp $
* Date: Sun, 25 Jun 2006 16:43:43 GMT
*/

/* Servers configuration */
$i = 0;

/* Server localhost (config:root) [1] */
$i++;
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['socket'] = 'mysql';
$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['controluser'] = 'root';
$cfg['Servers'][$i]['controlpass'] = 'password';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'password';
$cfg['Servers'][$i]['only_db'] = 'data';
$cfg['Servers'][$i]['pmadb'] = 'data';

/* End of servers configuration */

?>

:mad: :mad: :mad:

Ich bin für jeden Hinweis dankbar.

Viele Grüsse,
Wombat
 

Terminal

Gast
Folgende Einstellungen kannst du vermutlich weglassen, da du die Tabellen für die zusätzlichen Funktionen der PMA-Datenbank eh nicht angelegt hast:

$cfg['Servers'][$i]['bookmarktable'] = '';
$cfg['Servers'][$i]['relation'] = '';
$cfg['Servers'][$i]['table_info'] = '';
$cfg['Servers'][$i]['table_coords'] = '';
$cfg['Servers'][$i]['pdf_pages'] = '';
$cfg['Servers'][$i]['column_info'] = '';
$cfg['Servers'][$i]['history'] = '';
$cfg['Servers'][$i]['controluser'] = '';
$cfg['Servers'][$i]['controlpass'] = '';
$cfg['Servers'][$i]['pmadb'] = '';

Also alles bis auf die Anführungszeichen löschen. Was das Rootpasswort betrifft, hast du das nach der Installation von MySQL schon gesetzt? Das macht man im Terminal mit dem Befehl:

/usr/local/mysql/bin/mysqladmin -u root password (hier dein Passwort)

Nun bei user "root" eintragen und bei password dein "Passwort" welches du vergeben hast. Nun solltest du Zugriff erhalten und deine Datenbanken verwalten können.
 

Wombat

Gast
Vielen Dank, Terminal, für Deine Antwort.

Ich habe die Zeilen mal rausgenommen, aber keine Veränderung. Das Passwort habe ich bereits gesetzt, die User ausser root gelöscht. Root ist für host 'localhost' und 'mein-ibook-g4.local' mit Passwort zugelassen. Ich kann auf die MySQL-Konsole ohne weiteres zugreifen und Datenbanken bzw. Tabellen anlegen. PHP funktioniert auch, das habe ich mit einer info.php überprüft. Ich habe wirklich keine Ahnung woran das liegen kann, es muss was total blödes sein. Früher musste man nur den User, das Passwort und den Host eintragen und es lief.

Wenn Du sonst noch eine Idee hast, dann immer her damit.

Vielen Dank für Deine Mühe und viele Grüsse,
Wombat
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Hi Wombat,

das riecht verdächtig nach dem Socket-Problem, welches Du in der Apple-Knowledge-Base beschrieben findest. Dort siehst Du auch, dass die Problem-Lösung recht einfach ist, und schnell einen glücklichen Wombat erzeugen sollte (gilt übrigens nicht nur für OS X Server):
Issues connecting PHP to MySQL
Bevor Du allerdings diese Schritte anwendest, nimm Dir ein wenig Zeit, damit Du im Terminal keinen Käse tippst und aktualisiere Dein System zuvor vollständig. ;)
 

Wombat

Gast
Vielen Dank Hilarious!

Da weiss ich ja jetzt was ich heute nacht machen werde :). Ich sehe Licht am Ende des Tunnels.

Vielen Dank!

Viele Grüsse,
Wombat
 

Wombat

Gast
Also, da bin ich wieder. Also dieser Socket Fehler ist es nicht. Das kann man schnell feststellen indem man erstmal im Verzeichnis /tmp nach der Datei mysql.sock sucht. Und siehe da, es gibt sie und zwar genau dort. Was bedeutet, dass man diesen Wechsel nicht vollziehen muss. Nachdem ich aber den Artikel mal durchgelesen habe, habe ich einfach mal versucht als socket /tmp/mysql.sock anzugeben und siehe da, jetzt klappt es. Für Euch ist es vielleicht keine Überraschung oder grossartige Entdeckung, aber für mich schon, da ich ja bisher bei den phpMyAdmin config-Dateien eigentlich nur meinen korrekten Usernamen und das dazu passende Passwort und den Host eintragen musste. Nach Socket oder TCP hat mich da keiner gefragt. Nun weiss ich auch das. Perfekt.

Für diejenigen, die vielleicht dasselbe Problem haben hänge ich nochmal meine, für mich funktionierende, config.inc.php an:
<?php
/*
* Generated configuration file
* Generated by: phpMyAdmin 2.8.1 setup script by Michal ƒåiha?ô <[email protected]>
* Version: $Id: setup.php,v 1.23.2.8.2.2 2006/05/15 07:57:09 nijel Exp $
* Date: Sun, 25 Jun 2006 16:43:43 GMT
*/

/* Servers configuration */
$i = 0;

/* Server localhost (config:root) [1] */
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';
$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'password';
$cfg['Servers'][$i]['only_db'] = 'data';

/* End of servers configuration */

?>

Der Eintrag /tmp/mysql.sock unter socket war der Schlüssel zum Erfolg. Wäre ich aber ohne den von Hilarious geposteten Artikel nie drauf gekommen.

Nochmals vielen Dank!

Viele Grüsse,
Wombat
 

Nogger

Damasonrenette
Registriert
05.11.05
Beiträge
494
Mysql sagt, es verwendet einen UNIX Socket in /tmp. Mach mal eine PHP Seite, die phpinfo() aufruft und schau nach, wo PHP den Socket erwartet.

Da steht möglicherweise etwas wie /var/mysql/mysql.sock. In dem Fall würde ich einfach einen passenden Symlink anlegen.
 

Wombat

Gast
Das wird ja immer interessanter. Ich habe das mal gemacht und meine info.php gibt folgendes aus:


Vielleicht bin ich auch schon zu müde, um noch klar denken zu können ...

Ich habe in der config.inc.php Datei von phpMyAdmin angegeben, dass der Socket in /tmp/mysql.sock ist. Das funktionierte dann auch. Wäre ich nur so nicht drauf gekommen, da ich dieses Problem bisher noch nie hatte.

Als ich auf meinem lokalen Server nun auch noch Wordpress installiert habe, wollte die Installation meinen Host (localhost) nicht anerkennen und ich bekam immer die Fehlermeldung, dass entweder der User, das Passwort oder der Host verkehrt angegeben seien. Gut. Ich habe dann anstelle von localhost einfach mein-ibook-g4.local als Host angegeben und damit liess es sich dann installieren. Ich habe keine Ahnung wieso.

Ich hasse es wenn ich ein Problem nicht verstehe. Aber vielleicht erklärt es mir ja noch jemand :-[.

Vielen Dank für Eure Hilfe und viele Grüsse,
Wombat
 

ipu

Apfel der Erkenntnis
Registriert
05.05.04
Beiträge
728
...Als ich auf meinem lokalen Server nun auch noch Wordpress installiert habe, wollte die Installation meinen Host (localhost) nicht anerkennen und ich bekam immer die Fehlermeldung, dass entweder der User, das Passwort oder der Host verkehrt angegeben seien. Gut. Ich habe dann anstelle von localhost einfach mein-ibook-g4.local als Host angegeben und damit liess es sich dann installieren. Ich habe keine Ahnung wieso.

Ich hasse es wenn ich ein Problem nicht verstehe. Aber vielleicht erklärt es mir ja noch jemand ...

Mir geht es fast genauso. Mit installiertem Wordpress kommt o.g. Fehlermeldung. Nur nützt mir der Trick nicht, den Hostnamen umzubenennen.
Ich habe mit phpmyadmin die Datenbank erstellt und meinem user mit password alle Rechte gegeben. Leider kommt trotzdem die Fehlermeldung, dass entweder der User, das Passwort oder der Host verkehrt angegeben seien.
Jetzt steh ich vor dem Berg und sehe den Weg nicht.
Bin für Hilfe dankbar.

Gruß, Ingo
 

chris_cross

Carola
Registriert
20.07.06
Beiträge
111
Hallo,

Ich habe eben selbiges Problem. Jedoch hat weder die Apple Anleitung noch Spielen mit der config.inc zu Erfolg geführt.

Plattform: Macbook Pro, OSX 10.4 aktuellste patches installiert.

Apache 1.3 (der OSX Installation)
MySQL 5.1.12 für Intel Macs von der Herstellerseite

der MySql Daeomon läuft
christia 746 0.4 -0.0 27368 420 p1 S+ 11:39AM 0:00.01 grep mysql
mysql 380 0.0 -0.8 63836 15772 ?? S 10:34AM 0:01.57 /usr/local
und lässt sich auch mit den SQL GUI Tools ansprechen.

phpinfo() liefert:
MYSQL_SOCKET /var/mysql/mysql.sock


Das DBAdmin Tool sagt jedoch:
root
localhost
/tmp/mysql.sock


Die config.inc des phpMyAdmin:

$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';
$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '********';
$cfg['Servers'][$i]['only_db'] = 'data';

Hat jemand noch ne Idee?

LG

Chris
 
Zuletzt bearbeitet:

chris_cross

Carola
Registriert
20.07.06
Beiträge
111
Ok, das Problem hat mir keine Ruhe gelasse da ich mich geschlagene 3 Stunden mit der php/MySQL Installation herumgeplagt habe :)

Aus absolutem Misstrauen gegenüber dem Assistenten von phpMyAdmin habe ich mir eine ältere Version vom Webserver geliehen und siehe da -> es funtkioniert.

Nun hab ich zwar Version 2.6.irgendwas aber es läuft.

LG
Chris