Modify

Opened 5 years ago

Closed 3 years ago

#1894 closed Erweiterung (fixed)

Mixed ENGINE in Datenbank vermeiden

Reported by: Torsten Riemer Owned by: somebody
Priority: normal Milestone: modified-shop-2.0.8.0
Component: Shop Version: trunk
Keywords: Cc:
Blocked By: Blocking:

Description

Ich schlage eine neue Konstante "DB_SERVER_ENGINE" für die "/includes/configure.php" vor, die im Installer gesetzt wird, damit es beim Update von älteren Shops nicht mehr zu mixed ENGINE kommt.
Auch bei der Installation von Modulen, die Tabellen anlegen sollte diese Konstante heran gezogen werden um die Tabellen mit der entsprechenden ENGINE zu erstellen.

Attachments (0)

Change History (3)

comment:1 by Volker Strähle, 5 years ago

Bin eher dafür das nicht in der configure.php zu verankern, sondern durch eine Abfrage der DB auszuwerten:

SHOW GLOBAL VARIABLES LIKE 'storage_engine' 

Grund: Man könnte sonst auf die Idee kommen, dass die Änderung der Konstante eine Änderung der DB-Engine bewirkt.

Last edited 5 years ago by Torsten Riemer (previous) (diff)

comment:2 by anonymous, 5 years ago

Geht das wirklich so ?
Ich kenne das so:
SHOW ENGINES sollte in der "Support"-Spalte "DEFAULT" anzeigen.

Eine GLOBAL VARIABLE storage_engine würde aber auch nichts darüber aussagen mit welcher ENGINE die einzelnen Tabellen angelegt wurden sondern lediglich die Default-Engine aufzeigen.

Ich hatte in anderem Kontext auch bereits vor längerem vorgeschlagen die ENGINE und die COLLATION beim Anlegen der Tabellen in der DB vorzugeben weil ansonsten auf den DEFAULT in den Server-Einstellungen zurückgegriffen wird, was nicht immer (oder sogar oft nicht) gewünscht ist.
So könnte es z.B. wegen der Suchfunktion Sinn machen utf8_german2_ci in der Tabelle products_description zu setzen, um zu vermeiden, daß eine Suche nach z.B. "Müller" auch "Muller" zurückgibt.
Allerdings soll eine gemischte Collation bei JOINs die Queries verlangsamen.

Man sollte das vielleicht mal durchdiskutieren und evtl. mit Tests untermauern. Im Web gibt es nämlich dazu widersprüchliche Aussagen.

Gruß,
noRiddle

comment:3 by Gerhard Waldemair, 3 years ago

Resolution: fixed
Status: newclosed

In 14857:

fix #1894, #2351 - set mysql default storage engine

Modify Ticket

Action
as closed The owner will remain somebody.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.