Fehler: The MySQL error was: 'max_user_connections'
![](http://www.drupalcenter.de/files/noavatar_mini.gif)
am 22.01.2009 - 16:38 Uhr in
Hallo,
habe nun des öfterem folgende Fehlermedlung nach einer Emailkampagne:
The MySQL error was: User database already has more than 'max_user_connections' active connections.
wie ich das verstehe, sind zuviele Zugriffe und das verrsacht dies, denn mein Provider will mir erklären das es an einem Programmierfehler liegt, dies denke ich nicht, was glaubt Ihr?
Da ich das erste vermute, überlege ich die Datenbank auf einem anderen Server zu platzieen, aber nur die Datenbank - FTP bleibt bei diesem Provider, was meint Ihr macht es dann einen Unterschied, wenn wieder viele User zugreifen? Wird dann auch solch ein Fehler kommen können?
- Anmelden oder Registrieren um Kommentare zu schreiben
Erstmal muss ich loswerden,
am 23.01.2009 - 09:18 Uhr
Erstmal muss ich loswerden, das das Form sich leider verschlechtert hat, statt sich zu verbessern.
Ich lese in vielen Anfragen, vorallem neue User sehr oft nachfragen müssen, ob denn jemnand keine Idee für sein Probleme hätte, vor eine Jahr war das nicht so!
Naja wie auch immer, ich habe einen Nachtrag zu meiner Frage, eventuell gibts ja einen Kopf der hier mal ab und zu schlaue Sprüche verteilt, aber nie was konkretes zur Problembehebung sagt, was dazu tun - mal sehen.
Wie oben geschildert gibt es das Problem: max_user_connections, nun habe ich die Info, das dieses Problem aus einer Schleife generiert wird, diese ist mit dem Views zusammengesetzt und enthält Befehle wie LINK und LEFT JOINT, kann jemand dies bestätigen, dass diese Abfragen ungeeignet sind:
Anbei eine LOGDATEI vom Provider:
SELECT count( DISTINCT(node.nid)) FROM node node INNER JOIN usernode
usernode ON node.nid = usernode.nid LEFT JOIN users usernode_users ON
usernode.uid = usernode_users.uid INNER JOIN users users ON node.uid =
users.uid LEFT JOIN profile_values profile_kategorie ON users.uid =
profile_kategorie.uid AND profile_kategorie.fid = '22' LEFT JOIN
profile_values profile_bundesland_business ON users.uid =
profile_bundesland_business.uid AND profile_bundesland_business.fid =
'40' LEFT JOIN profile_values profile_ort_business ON users.uid =
profile_ort_business.uid AND profile_ort_business.fid = '13' LEFT JOIN
profile_values profile_bezirk_business ON users.uid =
profile_bezirk_business.uid AND profile_bezirk_business.fid = '24' LEFT
JOIN profile_values profile_vorlieben_hautfarbe ON users.uid =
profile_vorlieben_hautfarbe.uid AND profile_vorlieben_hautfarbe.fid =
'27' LEFT JOIN profile_values profile_vorlieben_haarfarbe ON users.uid =
profile_vorlieben_haarfarbe.uid AND profile_vorlieben_haarfarbe.fid =
'26' LEFT JOIN profile_values profile_vorlieben_erste_favoite_vorliebe
ON users.uid = profile_vorlieben_erste_favoite_vorliebe.uid AND
profile_vorlieben_erste_favoite_vorliebe.fid = '28' LEFT JOIN
profile_values profile_vorlieben_merkmal_1 ON users.uid =
profile_vorlieben_merkmal_1.uid AND profile_vorlieben_merkmal_1.fid =
'31' LEFT JOIN profile_values profile_vorlieben_merkmal_2 ON users.uid =
profile_vorlieben_merkmal_2.uid AND profile_vorlieben_merkmal_2.fid =
'32' LEFT JOIN profile_values profile_vorlieben_merkmal_3 ON users.uid =
profile_vorlieben_merkmal_3.uid AND profile_vorlieben_merkmal_3.fid =
'33' LEFT JOIN profile_values profile_vorlieben_merkmal_4 ON users.uid =
profile_vorlieben_merkmal_4.uid AND profile_vorlieben_merkmal_4.fid =
'34' INNER JOIN node_access na ON na.nid = node.nid WHERE
(na.grant_view >= 1 AND ((na.gid = 0 AND na.realm = 'all') OR (na.gid =
1 AND na.realm = 'content_access_rid') OR (na.gid = 1 AND na.realm =
'forum_access'))) AND ( (node.status = '1') AND (usernode_users.uid !=
'1') AND (usernode_users.uid != '3') AND (node.type IN ('usernode')) AND
(profile_kategorie.value LIKE 'Escort') AND
(profile_bundesland_business.value LIKE 'Bács-Kiskun' OR
profile_bundesland_business.value LIKE 'Baranya' OR
profile_bundesland_business.value LIKE 'Békés' OR
profile_bundesland_business.value LIKE 'Borsod-Abaúj-Zemplén' OR
profile_bundesland_business.value LIKE 'Csongrád' OR
profile_bundesland_business.value LIKE 'Fejér' OR
profile_bundesland_business.value LIKE 'Győr-Moson-Sopron' OR
profile_bundesland_business.value LIKE 'Hajdú-Bihar' OR
profile_bundesland_business.value LIKE 'Heves' OR
profile_bundesland_business.value LIKE 'Komárom-Esztergom' OR
profile_bundesland_business.value LIKE 'Pest' OR
profile_bundesland_business.value LIKE 'Somogy' OR
profile_bundesland_business.value LIKE 'Szabolcs-Szatmár-Bereg' OR
profile_bundesland_business.value LIKE 'Tolna' OR
profile_bundesland_business.value LIKE 'Vas' OR
profile_bundesland_business.value LIKE 'Veszprém' OR
profile_bundesland_business.value LIKE 'Zala') AND
(profile_ort_business.value LIKE 'Budapest') AND
(profile_bezirk_business.value LIKE 'II. kerület') AND
(profile_vorlieben_hautfarbe.value LIKE 'Európai | Europäisch |
European') AND (profile_vorlieben_haarfarbe.value LIKE 'Vörös | Rot |
Red') AND (profile_vorlieben_erste_favoite_vorliebe.value LIKE
'Erotikus-masszázs | Erotische-Massagen | Erotic-massage') AND
(profile_vorlieben_merkmal_1.value LIKE 'Molett | Mollig | Crummy') AND
(profile_vorlieben_merkmal_2.value LIKE 'Fiatal | Jung | Young') AND
(profile_vorlieben_merkmal_3.value LIKE 'Borotvált-vagyok |
Ich-bin-rasiert | Im-shaven') AND (profile_vorlieben_merkmal_4.value
LIKE '160cm - 170cm') );
# Time: 090113 1:38:49
# User@Host: sexyladies[sexyladies] @ localhost []
# Query_time: 13 Lock_time: 0 Rows_sent: 139 Rows_examined: 139
use sexyladies;
SELECT *,
`TABLE_SCHEMA` AS `Db`,
`TABLE_NAME` AS `Name`,
`ENGINE` AS `Engine`,
`ENGINE` AS `Type`,
`VERSION` AS `Version`,
`ROW_FORMAT` AS `Row_format`,
`TABLE_ROWS` AS `Rows`,
`AVG_ROW_LENGTH` AS `Avg_row_length`,
`DATA_LENGTH` AS `Data_length`,
`MAX_DATA_LENGTH` AS `Max_data_length`,
`INDEX_LENGTH` AS `Index_length`,
`DATA_FREE` AS `Data_free`,
`AUTO_INCREMENT` AS `Auto_increment`,
`CREATE_TIME` AS `Create_time`,
`UPDATE_TIME` AS `Update_time`,
`CHECK_TIME` AS `Check_time`,
`TABLE_COLLATION` AS `Collation`,
`CHECKSUM` AS `Checksum`,
`CREATE_OPTIONS` AS `Create_options`,
`TABLE_COMMENT` AS `Comment`
FROM `information_schema`.`TABLES`
WHERE BINARY `TABLE_SCHEMA` IN ('sexyladies')
LIMIT 250 OFFSET 0;
Fehler: The MySQL error was: 'max_user_connections'
am 04.04.2009 - 10:42 Uhr
Hallo Piet,
ich hoffe die Antwort kommt nicht zu spät immerhin soll dein Erotik-Portal ja endlich mal richtig brummen. Vom auslagern der Datenbank möchte ich dir abraten, solange diese sich nich in dem gleichen Netz wie der Web-Server befindet. Denn du müßtest die Regeln zum Verbinden zum MySQL-Server so einstellen, dass er von fast überall erreichbar ist. Oder wenigstens von der IP deines Web-Servers, das führt nur zu Sicherheitsproblemen. Schau mal, ob du "persistente" Verbindungen benutzt. Persistente Verbindungen haben den Vorteil, dass bei bestehender Verbindung zum MySQL-Server diese genommen wird anstatt eine neue Verbindung zu öffnen.
siehe: MySQL-Pconnect
Establishes a persistent connection to a MySQL server.
mysql_pconnect() acts very much like mysql_connect() with two major differences.
First, when connecting, the function would first try to find a (persistent) link that's already open with the same host, username and password. If one is found, an identifier for it will be returned instead of opening a new connection.
Second, the connection to the SQL server will not be closed when the execution of the script ends. Instead, the link will remain open for future use (mysql_close() will not close links established by mysql_pconnect()).
This type of link is therefore called 'persistent'.
Dann solltest du unbedingt deine Abfrage-Queries überarbeiten. Mach lieber mehrere kleine Abfragen als alles in eine große mit Joins zu verpacken. Die Daten kannst du auch in PHP im nach hinein filtern.
Sollte das Problem mit den "max_user_connections" weiterhin bestehen und dein Provider sich nicht dazu bewegen lässt diesen Wert in der MySQL-Config zu ändern, solltest du dich um einen anderen Provider bemühen, der dich nicht so einschränkt. Ich selbst betreibe einen Root-Server. Dort bin ich mein eigener Herr und kann schalten und walten wie ich möchte. Beachte aber, dass ein Root-Server wesentlich komplizierter ist als ein Managed-Server. Denn du musst dort selbst für die Sicherheit des Systems sorge tragen.
Erstmal muss ich loswerden, das das Form sich leider verschlechtert hat, statt sich zu verbessern.
Ich lese in vielen Anfragen, vorallem neue User sehr oft nachfragen müssen, ob denn jemnand keine Idee für sein Probleme hätte, vor eine Jahr war das nicht so!
Hier kann ich dir nicht recht geben, denn das Forum ist sehr aktiv und die User bemühen sich immer um gute Lösungen. Mir ist aber aufgefallen, dass du sehr häufig "Komplettlösungen" von uns verlangst ohne dich selbst zu informieren. Ein Blick in die Hilfe von PHP wirkt oft wunder. Wir machen es schließlich auch nicht anders, denn auch wir wissen nicht alles! Um schneller an Lösungen deiner Probleme zu kommen, kann ich dir nur nahe legen, dich mehr mit der Programmiersprache PHP und dem Datenbanksystem, das du einsetzt, zu beschäftigen. Denn wer etwas programmieren möchte, sollte in der Lage sein auch Probleme selbst zu lösen oder zumindest Lösungsansätze zu liefern die man dann diskutieren kann. Erwarte also bitte nicht, dass wir dir alles auf dem Silbertablett servieren.
Viele Grüße
Volker
--
![XING](http://www.xing.com/img/buttons/9_de_btn.gif)
--
Software is like sex; it's better if it's free. (Linus Torvalds)
Zunächst einmal gilt es die
am 04.04.2009 - 13:31 Uhr
Zunächst einmal gilt es die ordnungsgemäße Funktion eines Portals sicherzustellen. Ich kann keinen Dienst verkaufen, der nicht erreichbar ist. Da tröstet mich die vermeintliche höhere Sicherheit herzlich wenig..
--
mortendk: everytime you use contemplate... Thor is striking down from above with his mighty hammer - crushing and killing a kitten!
webseiter.de