• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Problem beim Zugriff von WinXP Client auf mySQL via ODBC

Hallo Leute,
ich habe auf meinem SuSe9.2 Server mySQL 4.1.11 (unter LAMPP) am laufen. Von meinem WinXP Client komme ich mit Webmin oder via Webbrowser http://LinuxServername.meineDomain.ch/phpmyadmin auf die Datenbank(en) zum Administrieren.
Nun habe ich auf WinXP den ODBC 3.51 installiert und versuche im Intranet eine Verbindung auf meine Datenbank auf dem Linuxserver zu machen. Erfolglos, bzw. folgende Fehlermeldung: [MYSQL][ODBC 3.51 driver] #HY000Host 'meinXPRechnername.meineDomain.ch' is not allowed to connect to this MySQL server.

ODBC Verbindungseinstellungen auf WinXP:
Server: Linuxserver.meineDomain.ch
User: root (mySQL Benutzer root, nicht Linuxuser root)
Password: meinPasswort (oder leer)

:oops: Frage: warum versucht der WinXP Client sich als Rechner (meinXPRechnername) anzumelden? :oops: Wo muss ich welche Einstellungen machen? :oops:
Danke für Eure Hilfe.

(Testweise habe ich auf WinXP auch XAMPP mit mySQL installiert; hier bringe ich den ODBC-Treiber mit obigen Einstellungen zum Laufen, also ist der ODBCTreiber schon ok)
 
habe nach http://dev.mysql.com/doc/refman/5.0/en/remote-connection.html mal einen "Testuser" GRANT ALL ON *.* to 'myuser'@'meinXPRechnername.meineDomain.ch' ' IDENTIFIED BY 'mypassword'; gemacht.
Resultat: ich habe nun eine Verbindung von WinXP nach mySQL auf Linux! :wink: soweit ok

:oops: Nächste Frage: es sollen alle PC's im Intranet Zugang erhalten, aber ich will nicht für jeden einzeln mit obigen Grantbefehl einen "Benutzer" erstellen; wie mach ich das? (wildcard?) :oops:
 
Code:
  GRANT Privileg [(Spalte, ...)]
  [, Privileg [(Spalte, ...)] ...]
  ON Tabelle TO Benutzer [IDENTIFIED BY 'Passwort']
  [, Benutzer [IDENTIFIED BY 'Passwort'] ...]
  [ WITH GRANT OPTION ] 

Mit Grant werden Rechte vergeben. 

Es muss die Berechtigung vorliegen, die jeweiligen Rechte zu vergeben.
Der Zugriff kann für Datenbanken, Tabellen oder einzelne Spalten gewährt werden.
Tabellen können durch ihren Namen angegeben werden und bezeichnen dann die betreffende Tabelle in der aktuellen Datenbank.
Durch Datenbank.Tabelle kann eine Tabelle in der angegebenen Datenbank bezeichnet werden, die Datenbank muss dabei nicht mit der aktuellen idetisch sein.
Mit der Wildcard '*' können alle Tabellen in der aktuellen Datenbank angegeben werden.
Mit Datenbank.* können alle Tabellen in der angegebenen Datenbank angegeben werden.
Mit *.* können alle Tabellen in allen Datenbanken angegeben werden. 

Die Benutzervariable hat die Form Benutzer@Host, fehlt die Host-Angabe, so wird die Wildcard % eingesetzt. Wildcards % können sowohl in der Benutzer- als auch in der Hostangabe verwendet werden. In diesen Fällen muss jedoch der gesamte Variablenwert oder auch nur der Teil, der die Wildcards enthält, in Anführungszeichen gesetzt werden. 
Bezeichnung der Rechte:
ALL
beinhaltet die Rechte: Select, Insert, Update, Delete, Create, Drop, Grant, References, Index, Alter und natürlich Usage, aber keineswegs alle Rechte. 
ALL PRIVILEGES 
ALTER 
CREATE 
DELETE 
DROP 
FILE 
INDEX 
INSERT 
PROCESS 
REFERENCES 
RELOAD 
SELECT 
SHUTDOWN 
UPDATE 
USAGE

Kurzer Auszug aus dem Befehl :wink:

Ich hoffe das hilft dir.
 
:shock: jup, das hat mir geholfen; mit 'myuser'@'%.meineDomain.ch' ' IDENTIFIED BY 'mypassword' läufts genau so wie ich mir das vorstelle.
thx an whois :D
 
Oben