Seite 1 von 1

Fragen phpbb-Tabellen

Verfasst: 27.10.2008 11:20
von Dinseprinz
Hallo,

mir sind bei der Umstellung auf MySQL 5.0.51 ein paar Warnhinweise in meiner Datenbank aufgefallen, die ich gern korrigieren möchte, vielleicht weiß jemand von euch Rat, wie der SQL-Befehl aussehen muß.

phpbb_topics

Hinweis: Es sollte nicht mehr als ein Index des Typs INDEX für die Spalte 'forum_id' gesetzt sein

phpbb_posts

Hinweis: Es sollte nicht mehr als ein Index des Typs INDEX für die Spalte 'topic_id' gesetzt sein

phpbb_search_wordmatch

Hinweis: Die Index-Typen INDEX und UNIQUE sollten nicht gleichzeitig für die Spalte 'word_id' gesetzt sein

Schließlich noch in einigen Tabellen der Hinweis: Kein Index definiert!

Gruß Dinseprinz

Verfasst: 27.10.2008 16:14
von Dave
Hi,

Wenn du bißchen Ahnung von mysql hast könntest du deine datenbank mit der mysql_40_schema.sql abgleichen die im ordner install/schemas/ liegt. Da siehst du welcher Index alles gesetzt werden muß.
Die die doppelt sind müßtest du eigentlich rauslöschen können. Aber bevor du was machst backup nicht vergessen :wink:

Zum hinzufügen kannst du in phpMyAdmin bei der Struktur übersicht dann entweder auf Primär oder Index klicken und schon hast du nen Index hinzugefügt.

MfG
Dave

Verfasst: 27.10.2008 17:35
von Dinseprinz
Hi,

danke für die Info, habe aber erstmal nichts gelöscht sondern was anderes versucht. Auf dem Screen siehst Du unten bei tid_post_time den quasi doppelten Index für die topic_id, ich habe die 2 Spalten nun einfach mal vertauscht, praktisch Spalte post_time nach oben und topic_id nach unten. Der Hinweis, nur einen Index für die topic_id zu setzen, ist verschwunden. Keine Ahnung wieso aber er ist weg, gleiches habe ich bei den übrigen Tabellen auch gemacht.

[ externes Bild ]

P.S. Original phpbb 3.0.2 mysql_4.0_schema

Code: Alles auswählen

REPLACE TABLE phpbb_posts (
	post_id mediumint(8) UNSIGNED NOT NULL auto_increment,
	topic_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
	forum_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
	poster_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
	icon_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
	poster_ip varbinary(40) DEFAULT '' NOT NULL,
	post_time int(11) UNSIGNED DEFAULT '0' NOT NULL,
	post_approved tinyint(1) UNSIGNED DEFAULT '1' NOT NULL,
	post_reported tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
	enable_bbcode tinyint(1) UNSIGNED DEFAULT '1' NOT NULL,
	enable_smilies tinyint(1) UNSIGNED DEFAULT '1' NOT NULL,
	enable_magic_url tinyint(1) UNSIGNED DEFAULT '1' NOT NULL,
	enable_sig tinyint(1) UNSIGNED DEFAULT '1' NOT NULL,
	post_username blob NOT NULL,
	post_subject blob NOT NULL,
	post_text mediumblob NOT NULL,
	post_checksum varbinary(32) DEFAULT '' NOT NULL,
	post_attachment tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
	bbcode_bitfield varbinary(255) DEFAULT '' NOT NULL,
	bbcode_uid varbinary(8) DEFAULT '' NOT NULL,
	post_postcount tinyint(1) UNSIGNED DEFAULT '1' NOT NULL,
	post_edit_time int(11) UNSIGNED DEFAULT '0' NOT NULL,
	post_edit_reason blob NOT NULL,
	post_edit_user mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
	post_edit_count smallint(4) UNSIGNED DEFAULT '0' NOT NULL,
	post_edit_locked tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
	PRIMARY KEY (post_id),
	KEY forum_id (forum_id),
	KEY topic_id (topic_id),
	KEY poster_ip (poster_ip),
	KEY poster_id (poster_id),
	KEY post_approved (post_approved),
	KEY tid_post_time (topic_id, post_time)
);
Scheint von vorn herein ein Bug von phpbb zu sein. :(

Gruß Dinseprinz

Verfasst: 27.10.2008 17:45
von Dave
Oder dein phpMyAdmin zeigt das falsch an.

Ich habe die gleichen Einträge ohne eine Meldung. Außerdem ist topic_id ja nicht doppelt. Ist ja ein anderer eintrag der wohl falsch ausgewertet wird. Ich würde da erstmal nix weiter dran machen wenn es mit dem phpBB übereinstimmt.

MfG
Dave