Mailinglisten-Archive |
Hallo , > es sind 1 GB RAM in den Server drin der RAM Bedarf richtet sich sehr stark nach der Datenbankgröße. Daher kann es schon möglich sein das mehr RAM hier sehr viel bringen kann. > Das problem bei den server zur zeit ist, das sie manchmal > wenn große suchanfragen kommen, Bei denen aus mehren > millionen daten eben einige tausende rausgesucht werden > müssen, er blckiert dann die tabellen "locked" - und das > kostet gedult bei den kunden (die sie ja nicht haben) Mehrer parallele Selects machen garnichts. Beim Select kommt ein read-lock damit Schreibzugriffe geblockt werden bis der Lesevorgang beendet ist. Mit InnoDB kann man das zwar vermeiden, handelt sich aber einen etwas langsameren Table-Handler ein um verliert einiges an Möglichkeiten der Datensicherung und Wiederherstellung da alles einer oeder wenigen großen Dateien liegt. > Die slow-log ist voll mit unserem insert für die suchtabelle > Diese wird (dynamisch aktualliesiert alle 30 min! > Grund dafür ist, das sie mehrer Fulltext indexe hat und diese > datei bei zu > vielen einzelnen insert kaputt geht > Daher alle 30 min ein großes insert (max 1 MB) Also hier ist definitiv was faul. Egal was du machst, eine Tabelle sollte nicht kaputt gehen. Bisher habe ich sowas auch bei MySQL (fast) noch nicht erlebt. Eigentlich nur dann wenn irgendwas am System faul war. Ich persönlich würde folgendes machen: - Der Web-Server schein ja nicht das Problem zu sein. Also den mal lassen. - Dem DB Server einen zweiten dazustellen und diesen als Master-Slave-Replikation (läuft bei mir produktiv seit Monaten) anbinden. So um nun den zweiten DB Server sinnvoll nutzen zu können muss man in der Anwendung was tun. Gut wäre es da wenn man Schreibzugriffe von Lesezugriffen trennen kann. Lesezugriffe verteilt man per Zufallsgenerator am besten auf einen der beiden Server, schreiben greift man immer auf den "Master" zu. Mit PHP sollte das an sich kein Problem sein - dort kann man ja Connection-Handles bei den DB-Abfragen mitgeben. Nach ähnlichem Modell läuft eine recht fette Datenbank hier auf vergleichsweise magerer Hardware seit Monaten zuverlässig und schnell. Gruß, Andreas -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive