Linux und MySql



  • Hi!

    Habe ein Programm in Linux geschrieben, welches eine Verbindung mit einer MySql Datenbank aufbaut.

    Das Programm funktioniert ja auch, aber ich kann nur eine Verbindung aufbauen, wenn ich in den "ConnectionString" localhost hineinschreibe.

    Also, wenn ich jetzt die IP Adresse der Netzwerkkarte bei connect verwende, kann sich der Computer (lokal) nicht mit der Datenbank verbinden!

    Hat jemand eine Idee, an was das liegen könnte?

    Über phpmyadmin kann ich mich auch von einem anderen PC mit der Datenbank verbinden.

    mfg
    Pauli

    MYSQL *dbHandle;
    dbHandle = mysql_init(0);
    dbHandle = mysql_real_connect(dbHandle, "192.168.0.2", "User", "remote", "db1", 0, 0, 0);
    


  • Schau dir mal die Rechte des RDBMS an.
    Kann sein das nur localhost Rechte besitzt. (default)

    Wenn du aber schon eine Client schreibst solltest du dir den Error zurückgeben lassen. Da würde dann auch drinstehen warum es nicht geht.
    Access denied oder ähnliches.



  • Danke für die Antwort!

    Aber wie kann ich die Error-Message abfragen.
    dbHandle ist bei mir 0, wenn das Programm
    keine Verbindung aufbauen kann.

    mfg
    Pauli



  • gibt eine apifunk dafür



  • @UNIX-TOM:

    Danke für deine Antworten!

    Habe das Problem gelöst:

    1. mysql_error Funktion verwendet --> kann nicht verbinden mit Datenbank von ... IP Adresse.

    2. google --> Lösung: my.cnf --> bind 127.0.0.1 auskommentiert.

    Ist wahrscheinlich dadurch etwas unsicherer, aber eine andere Lösung kenne ich nicht!
    Jetzt kann ich mich endlich mit der Datenbank verbinden!

    mfg
    Pauli



  • Klar ist es unsicher. So unsicher wie jeder Dienst der auf das extrene Netzwerkinterface hört. (HTTP,POP3,SMTP, was auch immer)


Anmelden zum Antworten