MySQL sowohl extern als auch local zugreifen

Alles, was MySQL betrifft, kann hier besprochen werden.

MySQL sowohl extern als auch local zugreifen

Postby dahappy » 26. January 2012 10:24

hallo ich hab vor einigen tagen mir meinen kleinen webserver mal wieda eingerichtet und zwar schön mit mysql datenbank. hat auch alles wunderbar funktioniert und ich konnte alles machen was ich wollte bis ich dann jetz ein von mir selbstgeschriebenes programm extern auf die mysql datenbank zugreifen lassen wollte was "natürlich" nicht ging habe dann nach ein wenig googln eine anleitung gefunden in der stand in der config von mysql

bind-address 127.0.0.1
zu bind-address 0.0.0.0 zu ändern.gesagt getan mit dem user der ddas recht hat extern zuzugreifen getestet allles wunderbar. nun soll der user aber auch local auf mysql zugreifen können und da liegt der hase begraben versuche ich mit mit diesem user über phpmyadmin oda ein eigenes php script auf localhost anzumelden schlägt dies fehl. nutze ich die dyndns domain also gehe den umweg übers netz läuft es wieda wunderbar. irgendjemand einen vorschlag?
dahappy
 
Posts: 2
Joined: 26. January 2012 10:19
XAMPP Version: 5.6.3
Operating System: Windows XP

Re: MySQL sowohl extern als auch local zugreifen

Postby Altrea » 26. January 2012 20:00

Hallo dahappy,

Leg den User einfach zweimal an, einmal für den Host % und einmal für den Host localhost.

Der Grund warum das sonst nicht funktioniert ist folgender:
Wenn mehrere Userprofile auf eine Anfrage zutreffend sein können, wird das am meisten spezifische genommen.
MySQL bietet von sich aus aber schon anonyme Benutzerprofile, unter anderem auch einen Benutzer %@localhost (% ist der Platzhalter für anonym, jeder bzw. nicht spezifiziert).
Dieser User ist spezifischer als dein User Benutzername@% und daher greift der anonyme benutzer des spezifizierten Host und nicht der von dir gewünschte User.

Deshalb der recht einfache Workaround den User zweimal anzulegen, immerhin verwendet der User ja auch zwei verschiedene Kommunikationskanäle: intern und extern. Deshalb macht es dann auch schon vom logischen Standpunkt aus Sinn.

mit freundlichen Grüßen,
Altrea
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 6755
Joined: 17. August 2009 13:05
XAMPP Version: 5.5.19
Operating System: W7Ux64

Re: MySQL sowohl extern als auch local zugreifen

Postby dahappy » 26. January 2012 22:14

oh auf die idee 2 mal den selben nutzer anzulegen bin ich noch garnicht gekommen... dankeschön ;)

das ist aber auch erst seit einer neueren version so oder? ich meine mich erinnern zu können das das früher mit % als host sowohl extern als auch intern ging. Wie dem auch sei besten dank noch einmal ;)
dahappy
 
Posts: 2
Joined: 26. January 2012 10:19
XAMPP Version: 5.6.3
Operating System: Windows XP

Re: MySQL sowohl extern als auch local zugreifen

Postby Knight1 » 27. January 2012 07:00

dahappy wrote:... das ist aber auch erst seit einer neueren version so oder? ich meine mich erinnern zu können das das früher mit % als host sowohl extern als auch intern ging. ...


Nicht ganz. Das ist immer schon so. Das %-Zeichen ist ein Platzhalter für alle Hosts und bedeutet dass der jeweilige User von allen Hosts aus auf den Server zugreifen darf.

Wenn Du zum Beispiel den Zugriff nur von localhost erlauben möchtest, dann musst dem User halt localhost als Host mitgeben.

Nochwas zu Deinem, in Deinem Eröffnungs-Thread, gewählten Begriff "extern".
Meinst Du damit vom Internet aus?
Falls das so ist, musst Du auch in Deinem Router den Port 3306 Freigeben. Dies ist der (Standard-)Port um auf MySQL zu zugreifen.

Kai aka Knight1
Image
User avatar
Knight1
 
Posts: 310
Joined: 18. October 2003 10:03
Location: Trier
XAMPP Version: 5.6.3
Operating System: Windows 7 Ultimate x64


Return to MySQL

Who is online

Users browsing this forum: No registered users and 5 guests