PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe, meine DB ist wieder kaputt



Masterphil
04.09.2008, 15:35
Lange hatte ich Ruhe mit irgendwelchen Fehlern, seit gestern aber läuft meine Datenbank zu Autolose.net nicht mehr.

Diese läuft extern.
Ähnliche, aber realtiv einfach lösbare Probleme hatte ich schon einmal, siehe hier:
http://www.designerscripte.net/showthread.php?t=6387

Ich habe mir also wieder mal den MySQL-Error ausgeben lassen, leider war es diesmal ein anderer als das letzte mal.

"2003: Can't connect to MySQL server on 'mysql16470.kunden.kontent.com' (4) 1045: Access denied for user 'www-data'@'localhost' (using password: NO)"

(Meine Daten sind natürlich korrekt, es liegt an etwas anderem)

Darauf hin habe ich Kontent kontaktiert, die meinten alles sei korrekt, haben mir auch ein Tool zum selber testen genannt, und mit diesem konnte ich von meinen Rechner aus auch tatsächlich korrekt meine DB öffnen, also die helfen mir nun nicht weiter, sie sind der Meinung es muss am Script liegen, was ich aber auch nicht glaube, denn dann hätte ich auch etwas ändern müssen, was ich nicht getan hab.

Könnte es noch eine andere Ursache geben ?
(Vielleicht hat ja mein Hoster mit dem Webspace den zugriff auf externe Datenbanken irgendwie unmöglich gemacht, was ich aber kaum glaube)

Bitte helft mir, damit Autolose.net schnell wieder geht.

MfG

Benutzer1699
04.09.2008, 17:55
Verfolg mal die Spuren...

in welcher Datei tritt der Fehler auf? Und dann schau mal welche Dateien eingebunden werden.

Besonderer Augenmerk: Die Variablen die mysql_connect bekommt - sind vermutlich nicht gesetzt bzw. leer.

Masterphil
04.09.2008, 20:02
Also der Fehler steht im Zusammenhang mit der functions.lib.php , da diese ja dafür zuständig ist mit der DB eine Verbindung aufzubauen.

Der Code dazu:


function db_connect() {
global $db_host,$db_user,$db_pass,$db_base,$sql_open;
$sql_open = @mysql_connect($db_host,$db_user,$db_pass) or die("Keine Verbindung zur Datenbank!");
$sql_base = @mysql_select_db($db_base) or die("Keine oder falsche Datenbank gewählt!");
}



function db_query($sql_tag) {
$sql_return = mysql_query($sql_tag);
return $sql_return;
}

function db_close() {
global $sql_open;
@mysql_close($sql_open) or die("Konnte die Verbindung mit Datenbank nicht schliessen!");
}


Wenn ich das so habe kommt als Fehler "Keine Verbindung zur Datenbank!"

Wenn ich wie gesagt den ErrorCode auslese, kommen die anderen 2 Fehler.

Die Variablen $db_host,$db_user,$db_pass,$db_base, sind klar am Anfang der functions-lib.php definiert. Eigentlich kann es nicht an der functions liegen, denn da hab ich nichts geändert, der Fehler besteht aber weiterhin. Bitte helft mir.

MfG

Benutzer1699
05.09.2008, 01:04
Da in deiner functions.lib.php die mysql_connect-Funktion auskommentiert und eine alternative Fehlermeldung ausgegeben wird, die nicht dem Muster deiner geposteten Fehlermeldung entspricht, vermute ich mal, dass du irgendwo ein weiteres mysql_connect in deinem Script hast.

Schau dir mal alle Dateien an, die eingebunden / aufgerufen werden wo dieser Fehler auftritt.

Masterphil
05.09.2008, 01:39
Die andere Fehlermeldung kommt wenn ich die connect funktion gegen jene aus dem anderen Threat austausch, die mir den genauen Fehler anzeigt.

Und das Muster haut doch hin, oder Blick ich da echt so wenig durch ?

Bei der orginalen function.lib kommt der Fehler:

"Keine Verbindung zur Datenbank"

Dies ist ja auch im Code.

Wenn ich an gleicher Stelle die Funktion abändere damit sie den Error mitausgibt, kommt der anderen Fehler:

"2003: Can't connect to MySQL server on 'mysql16470.kunden.kontent.com' (4) 1045: Access denied for user 'www-data'@'localhost' (using password: NO)"

Beides beruht aber auf der gleichen Tatsache, das meine DB von Autolose.net aus nicht erreichbar ist, ansonsten aber komplett funktioniert, ich werde erstmal testweise die lokale DB aktivieren, womit mein Problem aber nicht gelöst ist, da diese nicht VMS tauglich ist.

Irgendwie hat mich wohl der Datenbankteufel befallen.

Naja, erstmal einen schönen abend euch noch und danke an ztk, der hier mehr oder weniger, aber wenigstens überhaupt, hilfreich zur Seite steht.

MfG

Benutzer1699
05.09.2008, 02:33
Würde gerne mehr Zeit hier verbringen, aber auch ich habe viel nebenbei zu tun ;)


Die Verbindung autlose<>kontent dürfte nicht das Problem sein.
Probier es einfach mal aus, die Zugangsdaten direkt in den Funktionsaufruf - statt der Variablen zu verwenden.

Masterphil
05.09.2008, 13:12
Hi, habs mal probiert und die Zugansdaten diekt eingebaut, kommt wieder "Keine Verbindung zur Datenbank" , wobei es immer gute 30 Sekunden dauert eh die Meldung kommt, wenn ich falsche Daten eingebe kommt die Fehlermeldung hingegen sofort, ist mir mal so aufgefallen.

Ich werd noch bekloppt.

MfG

Benutzer1699
05.09.2008, 17:20
Installier dir testweise zu Hause mal eine Datenbank, bedenke die Ports vom Router ggf. auf deinen Rechner weiter zu leiten.

Verbinde dich vom Webspace mal damit ggf. noch von anderen Qullen... Vielleicht liegt es am Hoster oder an Kontent... komische Sache.

Masterphil
05.09.2008, 22:31
Also auf meinen Router hab ich keinen Zugriff mehr, also mit den Ports kann ich da nichts weiter machen, zumal mir eh das Know-How fehlt, meinen Rechner zum Server unzufunktionieren usw.

Man könnte aber versuchen eine andere externe Datenbank von Autolose.net anzusteuern, wenn das dann auch nicht geht liegts am Hoster, wenn es dann hingegen doch geht, müsste es an Konten liegen. Leider habe ich aber keine weitere externe Datanbank.

Wie schon geschrieben habe ich nun erstmal die interne Datenbank wieder aktiviert und die Datenbank von Kontent dahin kopiert, wie erwartet läuft über "localhost" wieder alles prima.

Eine Lösung ist das aber nicht, da mir untersagt wurde das VMS auf meine lokale DB loszulassen, daher musste ich fast alles entfernen was mein VMS hergibt und die User gerne nutzen.

Also, ich lass hier erstmal noch offen (Problem ist ja an sich nicht gelöst), vielleich hat ja wer zum testen mal ne externe DB für mich, oder ztk hat noch ne gute Idee.

Ich wünsch euch erstmal noch einen schönen abend und ein erholsames Wochenende.

MfG

Masterphil
10.09.2008, 15:34
Also, ich wollte mal bescheid geben das sich soeben mein Problem gelöst hat.

Ein riesiges Dankeschön geht auch hier nochmal an ztk, welcher mir sehr geholfen hat alle Fehler auszuschließen, bis nur noch eine mögliche Quelle übrig blieb.

Diesmal lag es tatsächlich an "Hosting-Friends" , meinem Hoster für den Webspace.

Da der Mitarbeiter sich das ganze auch nicht erklären konnte, ich ihn aber alles so genau geschildert hatte das er einsah das es wohl an ihnen liegen musste, hat er einfach mal ein paar laufende Programme und Prozesse neugestartet, und mein Problem war gelöst.

Woran genau es nun lag wusste er aber auch nicht, vermutlich muss die DB durch zuviele Anfragen etc. einen Leerlauf oder ähnliches verursacht haben.

Also, was lernen wir, der erste schein trügt oft und ähnliche Proble können ganz unerschiedliche Ursachen haben.

Ich mache hier dann mal zu, da ja erledigt.

Also eine schöne Woche euch allen noch.

MfG