www-data
ist der Debian-Benutzer, der Apache und PHP ausführt. Wenn Sie eine Abfrage ohne gültige Verbindung versuchen, versucht php/mysql, eine Verbindung mit <unix-user>@localhost
herzustellen ohne Passwort. Hier ist [email protected] (using password:NO)
kommt aus.
Der wahrscheinlichste Grund dafür, dass dies jetzt passiert (obwohl es vor 2 Jahren problemlos lief), ist, dass Ihre Datenbanklast so weit angestiegen ist, dass einige Verbindungen nicht mehr erfolgreich sein können (wahrscheinlich aufgrund von max_connections oder max_user_connections). dies kann auch aus anderen Einschränkungen wie Speicher, Threads usw. resultieren). In diesem Fall wird Ihr Aufruf von mysql_connect
gibt eine Fehlermeldung aus und gibt FALSE
zurück . Wenn Sie diesen Fehler nicht erkennen, wird Ihr nächster MySQL-Aufruf (wahrscheinlich mysql_query oder mysql_select_db) versuchen, eine Verbindung zu [email protected]
-- wodurch das angezeigte Problem verursacht wird.
Ich schlage vor, die Fehlerberichterstattung und Fehleranzeige zu aktivieren (wie von @DarkMantis vorgeschlagen):
ini_set('error_reporting', E_ALL|E_STRICT);
ini_set('display_errors', 1);
Stellen Sie außerdem sicher, dass Ihr Aufruf von mysql_connect nicht ist vorangestellt ein @
Schild; und überprüfen Sie unbedingt den Rückgabewert. Es sollte etwa so aussehen:
$cxn = mysql_connect('localhost','yourusername','yourpassword');
if( $cxn === FALSE ) { die('mysql connection error: '.mysql_error()); }