Kalle_B: Neuer Versuch ...

Beitrag lesen

Hello,

will mich mal bemühen, deine Fragen zu beantworten.

  1. woher kommt das 'http'?

Sorry, habe verschiedene Versuche gemacht, PHP- Code und Meldung gehören nicht zusammen. Hier nochmal:

$p022_connect = mysql_connect( 'xxx.xx.xxx.xx', 'kw', 'pw' );  
if ( $p022_connect ) echo "JA<br>"; else echo "NEIN<br>";  

Meldung unter Win2000:
Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'xxx.xx.xxx.xx' (10061) in D:...\p022.php on line 17
NEIN

Meldung unter LINUX (Ersqatzserver):
NEIN

  1. warum hast Du das mysql_error() aus der Fehlermeldung rausgenommen?

Habe die recht komplizierte DB-Anmeldung durch zwei Testzeilen ersetzt. Hier nochmal das etwas abgeänderte Original:

    // MIT HOST VERBINDEN  
    $db[$nr]['conn_id'] = @mysql_connect( $db[$nr]['host'], $db[$nr]['id'], $db[$nr]['pw'] );  
  
    if ( $db[$nr]['conn_id'] ) {  
...  
    } else {  
      // 2006-03-03 MELDUNG NUR BEI FREIGEGEBENER DB  
      if ( $db[$nr]['gesperrt'] == 0 ) {  
//      echo "<p>".mysql_error()."<br>Verbindung zu <b>host [".$db[$nr]['host']."]</b> ist fehlgeschlagen.</p>";  
        echo "<pre><b>".mysql_errno().": ".mysql_error()."</b><br><b>host [".$db[$nr]['host']."]</b></pre>";  
      }  
    }  

Das ergibt die Meldung:
0:
host [xxx.xx.xxx.xx]

Also keine Verbindung zustandegekommen, aber auch kein Fehler -  Hä?

  1. passt die Client-API zum Connector der Datenbank?
       Welche Versionen sind installiert?

Frage nicht verstanden.

  1. Hast Du einen User eingerichtet in der MySQL-Datenbank-Verwaltung
       'username'@'IP_des_Clients' oder, wenn die nicht bekannt ist
       'username'@'%', was ich aber möglichst vermeiden würde wegen gefährlicher...

Muss ich mal eben in phpmyadmin gucken (Provider hat ja was geändert) ...
Es gibt einen 'username'@localhost und einen 'username'@%, wobei username beide Male derselbe ist. Mögliche Fehlerquelle? (Nöö, root kommt auch mehrfach vor).

% deshalb, weil auch ein USB- Stick "Ersatzserver" sein darf und sich Daten ziehen kann.

  1. Hast Du eine Firewall zwischen dem Client und dem MySQL-Server sitzen?
       Meistens ist es die Popelwall von Windows, oder noch schlimmer, die von
       irgendeinem beschissenen Virenschutzprogramm, die stört.

Bei Win2000 weiss ich es nicht, bin hier beim Kunden an einem (mir) unbekannten Router angeschlossen. Aber der Versuch, von einem Linux- Server zum anderen scheitert eben auch.

  1. Ist am Router ggf. der Port 3306 gesperrt, bzw. nicht freigegeben für Requests
       aus deinem Client-Netz hinaus in die Welt?

s.o.

Ich habe derartige Aktionen schon mit vielen Kunden durchgezogen, die allerdings ihre Datenbank ins Haus geholt haben und dann von 1&1 aus (dort liegen die Webseiten) über DynDNS auf ihren MySQL-Server im Hause zugegriffen haben.

Das hat den Vorteil, dass bei richtiger Konfiguration niemand (beim Provider) die gesamte Datenbank in Zugriff bekommt, sondern maximal die einzelnen Datenpakete von einzelnen Requests und Responses

Tja, damit hätte ich die Gesamtproblematik der Linux- Servertechnik und des zugehörigen Know-Hows am Hals ... Wollte ich eigentlich delegieren, aber wie man sieht, klappt das nicht.

Lieben Gruß, Kalle