Mysql ich werd noch wahnsinnig

hallo ihr da draußen,

also ich habe folgendes problem.

ich bin dabei eine mysql datenbank zu erstellen.
dabei habe ich einen linuxserver, das programm phpmyadmin und einen mysql server (mysqld), ja das ganze läuft auf linux.

die linux maschine: debian, apache server samba server naja und noch so kleinigkeiten.

nun aber mein problem,

in der mysql datenbank „mysql“ sind drei tabellen die die benutzerrechte regeln (host,user,db).

wie zum teufel muss ich da die daten eingeben, dass ich aus dem netz als user ohne name von einem fremden host zugreifen kann? ich weiss echt nicht mehr weiter.

ach ja: ich greife auf den hauptrehner mit 2 clienten zu, und trotzdem indentifiziert er mich immer als root. wenn ich von einem anderen rechner komme warum bin ich dann root. der andere rechner hat ja auch eine nandere ip und so weiter.

fragen über fragen, ich hoffe mir kann jemand helfen!

danke

mfg
abv24.de

Hallo,

ich bin dabei eine mysql datenbank zu erstellen.
dabei habe ich einen linuxserver, das programm phpmyadmin und
einen mysql server (mysqld), ja das ganze läuft auf linux.

die linux maschine: debian, apache server samba server naja
und noch so kleinigkeiten.

nun aber mein problem,

in der mysql datenbank „mysql“ sind drei tabellen die die
benutzerrechte regeln (host,user,db).

wie zum teufel muss ich da die daten eingeben, dass ich aus
dem netz als user ohne name von einem fremden host zugreifen
kann? ich weiss echt nicht mehr weiter.

So ganz ohne User geht das nicht. Beim Zugriff auf die Datenbank
wird ein User angenommen. Beim Zugriff von *NIX-Systemen aus
wird, wenn kein Username angegeben, der *NIX-Login-(User-)Name
angenommen. Von Windows aus ist der User meist ODBC…

ach ja: ich greife auf den hauptrehner mit 2 clienten zu, und
trotzdem indentifiziert er mich immer als root. wenn ich von
einem anderen rechner komme warum bin ich dann root. der
andere rechner hat ja auch eine nandere ip und so weiter.

Die IP ist völlig egal, es zählt nur der Username.

Tipp: User mit entweder mit phpMyAdmin (Benutzerverwaltung, steht
auf der Startseite) oder mySQLCC (http://www.mysql.com/downloads/mysqlcc.html)
einrichten. Wichtig: Nach Einrichten/Ändern von User-Angaben
einen Flush der Privileges (oder neustart von mysqld) durchführen!
Sonst werden die Änderungen nicht übernommen.

Außerdem: Immer einen Benutzer beim Zugriff auf die Datenbank
angeben.

Ich hoffe, das hilft erst einmal. Falls nicht, wäre interessant zu
wissen, mit welchem Client Du auf die DB zugreifst.

Gruss
Thomas

Mich auch, ab einem gewissen Grad :wink:
Hi,

gibt am anfang nen stduser ‚root‘ mit password ‚‘.
Der darf alles von überall, solange der Host erreichbar ist.
Also:
Mit ‚root‘ mit der DB verbinden.
In der DB ‚mysql‘ tabelle ‚user‘ einen neuen User einfügen und ihm alle Rechte zuweisen.
Bei Hosts ‚%‘ für alle hosts eingeben.
Dann mySQL restarten und mit neuem User anmelden nd arbeiten.
Soweit tut es bei mir.

Ich habe jetzt nur das problem, wenn ich auf diese Weise ein Password eifüge, verbindet er sich nicht.
Vermute mal, dass es crypted in der DB stehen muß. Bin mir aber nicht sicher, was ich vieleicht nicht beachtet habe.
Werds noch testen, sobald ich eine 'crypt’Funktion irgendwo gefunden habe.

cu Desian

PASSWORD()
Hallo Desian,

Ich habe jetzt nur das problem, wenn ich auf diese Weise ein
Password eifüge, verbindet er sich nicht.
Vermute mal, dass es crypted in der DB stehen muß. Bin mir
aber nicht sicher, was ich vieleicht nicht beachtet habe.
Werds noch testen, sobald ich eine 'crypt’Funktion irgendwo
gefunden habe.

Das Passwort muss mit
INSERT INTO user (Host, User, Password…) VALUES
VALUES (‚Host‘, ‚UserName‘, PASSWORD(‚Geheim‘),…
eingefügt werden.

Hallo !

hallo ihr da draußen,

also ich habe folgendes problem.

ich bin dabei eine mysql datenbank zu erstellen.
dabei habe ich einen linuxserver, das programm phpmyadmin und
einen mysql server (mysqld), ja das ganze läuft auf linux.

die linux maschine: debian, apache server samba server naja
und noch so kleinigkeiten.

nun aber mein problem,

in der mysql datenbank „mysql“ sind drei tabellen die die
benutzerrechte regeln (host,user,db).

wie zum teufel muss ich da die daten eingeben, dass ich aus
dem netz als user ohne name von einem fremden host zugreifen
kann? ich weiss echt nicht mehr weiter.

User „ohne Namen“ gibt es nicht, wie schon aus dem anderen Beitrag ersichtlich. Aber warum willst du überhaupt die mySQL-Tabellen von Hand anfassen, das geht per SQL viel schöner und einfacher:

GRANT ALL PRIVILEGES ON *.* TO username@’%’ IDENTFIED BY ‚password‘

bei der Verwendung von GRANT / REVOKE ist FLUSH PRIVILEGES („mySQL neustarten“) nicht erforderlich, wenn du selbst in die Tabellen schreibst, werden die Änderungen erst nach FLUSH PRIVILEGES aktiviert.

http://www.mysql.com/doc/en/GRANT.html

ach ja: ich greife auf den hauptrehner mit 2 clienten zu, und
trotzdem indentifiziert er mich immer als root. wenn ich von
einem anderen rechner komme warum bin ich dann root. der
andere rechner hat ja auch eine nandere ip und so weiter.

Default ist der lokale Benutzername, oder der in der ~/.my.cnf angegebene. „mysql -u benutzername -p“ verwenden, oder eine .my.cnf erstellen…

Alexander

benutzer lassen sich in mysql am einfachsten und genuesten mit grant und revoke verwalten.
http://www.mysql.com/doc/de/GRANT.html