Seite 1 von 2
Immer Tabellen optimieren..Das ist nicht normal?
Verfasst: 11.02.2005 16:45
von askim
Hallo,
Ich habe seit Paar Tagen folgendes problem:
Überhänge in folgenden Dateien,und muss alle 10 minuten die tabellen optimieren.Das kann doch nicht normal sein.Was muss ich tun,damit das problem nicht immer wieder auftaucht?
phpbb_sessions
phpbb_posts
phpbb_postts_test
phpbb_search_wordlist
phpbb_search_wordmatch
phpbb_topics
phpbb_topics_watch
phpbb_users
Vielen Dank.
Verfasst: 12.02.2005 00:25
von Dennis63
Also die Sessions-Tabelle kann gar nicht optimiert werden, da es sie gar nicht gibt auf der Festplatte. Sie ist nur im Arbeitsspeicher des Server. vorhanden.
Warum mußt Du denn alle 10 Minuten optimieren? Läuft das Board nicht mehr?
Es ist vollkommen normal, daß es Überhänge gibt. Muss ja auch. Denn die Überhänge sind ja da, damit MySQL schneller wird - grob gesagt.
Grüße
Dennis
Verfasst: 12.02.2005 07:57
von rabbit
Dennis Böge hat geschrieben:Also die Sessions-Tabelle kann gar nicht optimiert werden, da es sie gar nicht gibt auf der Festplatte. Sie ist nur im Arbeitsspeicher des Server. vorhanden.
Grüße
Dennis
aber nur, wenn es eine HEAP tabelle ist, oder? ich musste erst zu HEAP konvertieren, voher war's eine MyISAM...
Verfasst: 12.02.2005 12:19
von Dennis63
Die Sessions ist HEAP. Ausser Du hast sie selber von HEAP nach MyISAM geändert...
Grüße
Dennis
Verfasst: 27.02.2005 00:53
von rabbit
Dennis Böge hat geschrieben:Die Sessions ist HEAP. Ausser Du hast sie selber von HEAP nach MyISAM geändert...
Grüße
Dennis
nicht ganz richtig:
mysql_schema.sql hat geschrieben:# --------------------------------------------------------
#
# Table structure for table 'phpbb_sessions'
#
# Note that if you're running 3.23.x you may want to make
# this table a type HEAP. This type of table is stored
# within system memory and therefore for big busy boards
# is likely to be noticeably faster than continually
# writing to disk ...
#
CREATE TABLE phpbb_sessions (
session_id char(32) DEFAULT '' NOT NULL,
session_user_id mediumint(8) DEFAULT '0' NOT NULL,
session_start int(11) DEFAULT '0' NOT NULL,
session_time int(11) DEFAULT '0' NOT NULL,
session_ip char(8) DEFAULT '0' NOT NULL,
session_page int(11) DEFAULT '0' NOT NULL,
session_logged_in tinyint(1) DEFAULT '0' NOT NULL,
PRIMARY KEY (session_id),
KEY session_user_id (session_user_id),
KEY session_id_ip_user_id (session_id, session_ip, session_user_id)
);
sieht so aus, als ob die tabelle manuell auf HEAP gestellt werden muss und nicht by default auf HEAP gesetzt wird.

Verfasst: 27.02.2005 11:04
von roger
... also, meine sessions ist HEAP, - ohne Handanlegen...
roger
Verfasst: 01.03.2005 11:32
von nepf
roger hat geschrieben:... also, meine sessions ist HEAP, - ohne Handanlegen...

Tjä, und meine ist MyISAM, - ebenfals ohne Handanlegen...
Ist ja nicht sooo schlimm, kann ich ja in PHPMyAdmin ändern.
Aber bevor ich das mache, bitte ich doch noch mal um eine Bestätigung, dass das wirklich richtig ist, und auch um eine kleine Erklärung, damit ich verstehe warum.
Also:
1. Sollte ich von MyISAM nach HEAP konvertieren?
2. Was ist der Unterschied?
3. Warum ist das vorteilhaft?
4. Und überhaupt, wozu ist die phpbb_sessions da?
5. Ach - ja, in der letzten zeit hat sich mein Forum ein paar mal aufgehängt und ich musste dann jeweils die phpbb_sessions reparieren - danach war wieder gut. Kann es sein, dass sich dieses Problem mit einer Konvertierung nach HEAP löst?
Verfasst: 01.03.2005 16:17
von rabbit
das alles, und noch viel mehr... erklärt dieser artikel: KB:sessions

Verfasst: 01.03.2005 16:33
von Dennis63
1. Sollte ich von MyISAM nach HEAP konvertieren?
Ja
2. Was ist der Unterschied?
Heap ist im Ram.
3. Warum ist das vorteilhaft?
Der Ram ist schneller.
4. Und überhaupt, wozu ist die phpbb_sessions da?
Damit werden die Sessions verwaltet.
5. Kann es sein, dass sich dieses Problem mit einer Konvertierung nach HEAP löst?
Da Heapdateien nicht auf der Festplatte gespeichert werden, ist nichts da, was es zu reparieren gibt - es kann halt nix kaputt gehen.
Grüße
Dennis
Verfasst: 01.03.2005 17:33
von nepf
vielen Dank!