hallo zusammen.
ich bin gerade etwas erstaunt und irgendwie angepisst zugleich :)
Bis jetzt war ich der Meinung, dass ich einem User ermöglichen kann, von und über jeden Host auf die DB zuzugreifen, wenn ich die Host-Parameter auf "%" setze.
Jetzt ists z.B. so, dass postfix als Host meine Domaineingetragen hat, weil der chrooted läuft und somit nicht auf den Socket zugreifen kann, sondern über TCP reinkommt.
Soweit so gut, nur hab ich jetzt nach einem Reboot festgestellt, dass ich EXPLIZIT für "localhost" und "domain" je einen Eintrag anlegen muss, damit ich folgendes machen kann:
connect to "localhost"
connect to "domain"
und beide Male liegen die Scripte auf meinem Server.
Wenn ich mit Platzhalter ("host=%") arbeite, bekomme ich immer Access Denied for User... etc.
Wieso geht das nicht mit einem Eintrag und Platzhalter à la "%" ?
[war das jetzt total wirr?] :)
User-Tables: host=%
-
- Posts: 22
- Joined: 2004-02-24 19:34
Re: User-Tables: host=%
doch, ist auskommentiert. deswegen wunderts mich ja so.
Re: User-Tables: host=%
Laß weiter raten:
postfix soll mit dem mysql-Server über TPC/IP reden? Versuchmal mit "127.0.0.1" statt mit localhost den mysqld anzusprechen...
postfix soll mit dem mysql-Server über TPC/IP reden? Versuchmal mit "127.0.0.1" statt mit localhost den mysqld anzusprechen...
-
- Posts: 22
- Joined: 2004-02-24 19:34
Re: User-Tables: host=%
ja, das ist mir auch klar.
vielleicht hab ichs wirklich zu wirr ausgedrückt.
das problem ist, dass ich den Platzhalter % in den Usertabellen nicht verwenden kann (z.B. bei Hosts), sondern explizit Datensätze für "localhost" und "domain" anlegen muss...
normalerweise sollte es doch so gehen, dass ich je EINEN Datensatz in user bzw. db anlege, in dem dann host=% steht. Dann müsste ich von jedem beliebigen Host auf die DB über dieses User/Pass Kombination zugreifen können.
ist aber nicht der fall.
vielleicht hab ichs wirklich zu wirr ausgedrückt.
das problem ist, dass ich den Platzhalter % in den Usertabellen nicht verwenden kann (z.B. bei Hosts), sondern explizit Datensätze für "localhost" und "domain" anlegen muss...
normalerweise sollte es doch so gehen, dass ich je EINEN Datensatz in user bzw. db anlege, in dem dann host=% steht. Dann müsste ich von jedem beliebigen Host auf die DB über dieses User/Pass Kombination zugreifen können.
ist aber nicht der fall.
-
- Posts: 335
- Joined: 2002-12-17 22:25
- Location: Berlin
Re: User-Tables: host=%
ich zitiere mal aus dem Datenbankhandbuch von http://www.little-idiot.de/mysql/
das sollte deine Frage beantworten :-DWenn man nicht feststellen kann, weshalb weiterhin die Meldung Access denied... erzeugt wird, sollte man alle Hostnamen-Einträge die einen Wildcard (%< oder _) beinhalten aus der user- Tabelle entfernen. Oft geht man davon aus, daß man mittels des Eintrags Host=% und user=User die Möglichkeit hat, sich von dem lokalen Host (localhost) aus zu connecten. Der Grund, warum dies nicht funktioniert ist, daß der Eintrag host=localhost und user= vor dem Eintrag host=% und user=user bevorzugt wird! Um dies zu beheben sollte ein Eintrag host=localhost und user= user erstellt oder der Eintrag user= entfernt werden.