mysql administrator mal wieder [gelöst]
mysql administrator mal wieder [gelöst]
hallo,
leider bekomme ich beim mysql administrator die meldung das meine ip adresse nicht erlaubt ist auf den mysql server zuzugreifen. komisch, denn ein root passwort ist gesezt mit welchem ich mich auf der konsole auch anmelden kann. unter bind-address steht auch die richtige ip des servers.
was kann das noch sein?
gruesse rene
leider bekomme ich beim mysql administrator die meldung das meine ip adresse nicht erlaubt ist auf den mysql server zuzugreifen. komisch, denn ein root passwort ist gesezt mit welchem ich mich auf der konsole auch anmelden kann. unter bind-address steht auch die richtige ip des servers.
was kann das noch sein?
gruesse rene
Zuletzt geändert von rene04 am 12.12.2005 18:12:44, insgesamt 1-mal geändert.
-
- Beiträge: 48
- Registriert: 19.12.2004 18:20:01
log dich nochmal lokal ein und gib folgenden sql befehl ein:
mysql> select host, user, password from user;
host zeigt dir hier an, von welchem host aus du mit welchem nuter auf die datenbank zugegriffen werden darf. der eintrag "%" ist aus sicherheitsgründen natürlich nicht bei root eingestellt, nur "localhost", ansonsten ist die angriffsfläche, die mysql dann hackern bieten würde, zu gross.
überlege, ob du wirklich ein vom internet zugänglichen root user benötigst, evtl. tut es ja auch ein benutzer speziell für eine datenbank? evtl. kannst du mit phpmyadmin genug arbeit erledigen? steht der rechner bei dir zu hause und zugriff von aussen ist sowieso nicht möglich, dann könntest du gefahrlos ein "%" bei root in der spalte host eintragen.
lies ein tutorial zu mysql, dass ist die "standardanfängerfrage" gewesen und wird normal in jeder einführung zu mysql abgehandelt. ähnlich übliche probleme werden dir schon in den nächsten schritten wieder begegnen.
mfg
m
mysql> select host, user, password from user;
host zeigt dir hier an, von welchem host aus du mit welchem nuter auf die datenbank zugegriffen werden darf. der eintrag "%" ist aus sicherheitsgründen natürlich nicht bei root eingestellt, nur "localhost", ansonsten ist die angriffsfläche, die mysql dann hackern bieten würde, zu gross.
überlege, ob du wirklich ein vom internet zugänglichen root user benötigst, evtl. tut es ja auch ein benutzer speziell für eine datenbank? evtl. kannst du mit phpmyadmin genug arbeit erledigen? steht der rechner bei dir zu hause und zugriff von aussen ist sowieso nicht möglich, dann könntest du gefahrlos ein "%" bei root in der spalte host eintragen.
lies ein tutorial zu mysql, dass ist die "standardanfängerfrage" gewesen und wird normal in jeder einführung zu mysql abgehandelt. ähnlich übliche probleme werden dir schon in den nächsten schritten wieder begegnen.
mfg
m
-
- Beiträge: 48
- Registriert: 19.12.2004 18:20:01
gut, das war unvollständig. du hast die datenbank cmsdb in gebrauch. zuerst die richtige datenbank auswählen:rene04 hat geschrieben:bei dem befehl bekomme ich cmsdb.user doesnt exists.
mysql> use mysql;
und dann das select kommando
mysql> select host, user, password from user;
so sollte es erst einmal weiter gehen
mfg
m
Hm, ich glaube, du solltest wirklich erstmal http://dev.mysql.com/doc/refman/4.1/en/ ... ystem.html lesen. Da wird das alles erklaert, wie das MySQL-Berechtigungssystem funktioniert.
Dann mal zu deiner Ausgabe:
So wie das aussieht, hast du bei den Berechtigungen nur den Zugriff von root von localhost und linux-test erlaubt. Was fehlt ist ein entsprechender Eintrag, der fuer deine Quell-IP passt, sprich fuer den Client, von dem aus du connecten willst.
Ich weiss nicht, welche Rechte der mysql administrator braucht, aber ich tippe mal auf sowas in der Richtung:
Damit wuerde zum Beispiel der Zugriff auf alle Datenbanken fuer den Benutzer root aus dem Subnetz 192.58.197.0/24 erlaubt, wobei das Passwort dabei <Passwort> ist.
Nach diesem Kommando brauchst du eventuell noch ein
Wie gesagt, naeheres siehe die MySQL-Anleitung.
Dann mal zu deiner Ausgabe:
So wie das aussieht, hast du bei den Berechtigungen nur den Zugriff von root von localhost und linux-test erlaubt. Was fehlt ist ein entsprechender Eintrag, der fuer deine Quell-IP passt, sprich fuer den Client, von dem aus du connecten willst.
Ich weiss nicht, welche Rechte der mysql administrator braucht, aber ich tippe mal auf sowas in der Richtung:
Code: Alles auswählen
GRANT ALL ON *.* TO root@'192.58.197.0/255.255.255.0' IDENTIFIED BY '<Passwort>';
Nach diesem Kommando brauchst du eventuell noch ein
Code: Alles auswählen
FLUSH PRIVILEGES;
was ich eben ÜBERHAUPT nicht verstehe ist: ich habe schonmal nen mysql-server für unser wiki aufgesetzt. da hat es gereicht die bind-address zu ändern in die richtige IP. das war alles was zu tun war!!!
und nun soll auf einmal alles VIEL komplizierter sein? ja bin ich denn hier bei oracle?
habe mal die zeilen eingegeben, hat aber rein garnichts gebracht
gruesse rene
und nun soll auf einmal alles VIEL komplizierter sein? ja bin ich denn hier bei oracle?
habe mal die zeilen eingegeben, hat aber rein garnichts gebracht
gruesse rene
Weil dem MySQL-Server es total schnuppe is, an welche IP er gebunden ist. Das wichtige ist, von welcher IP deine Verbindungsanfrage kommt. Und genau dafuer ist die 1. Spalte in der Tabelle user wichtig. Hier checkt der MySQL-Server, ob die Verbindung zu dem dort hinterlegten Wert passt. Falls das nicht der Fall ist -> Access denied und aus die Maus
Und ja, lies dir bitte mal die Doku durch.
Und ja, lies dir bitte mal die Doku durch.