MySQL Forums
Forum List  »  German

Datenbanktabelle klein halten
Posted by: Daniel Bäuerlein
Date: May 27, 2021 12:17AM

Hi zusammen,

ich nutze eine MySQL-Datenbank, um den Inhalt Emails zu archivieren.
Auf das "warum" möchte ich hier gar nicht im Detail eingehen.
Letzendlich geht es darum, den Inhalt von vielen Emails in einer Datenbank zur Verfügung zu stellen.

Die Emails werden von einem Microsoft Exchange Server per php-ews ausgelesen und dann der textliche Inhalt (Betreff und Body der Email) in eine Datenbanktabelle geschrieben.

Aktuell sieht diese von der Struktur her folgendermaßen aus:

ID int(6) Autoincrement Primary Key
email_id varchar(300) In dieses feld wird die Outlook ID der email reingeschrieben
email_an varchar(255) enthält die Email-Empfänger (AN)
email_cc varchar(255) enthält die Email-Empfänger (CC)
email_bcc varchar(255) enthält die Email-Empfänger (BCC)
subject varchar(255) enthält den Betreff der Email
body longtext enthält den Inhalt der Email...ob hier longtext übertrieben ist?
datum datetime enthält das Datum der Email

Nun ist es so, dass diese Datenbanktabelle aktuell ca. 3750 Emails enthält und 200MB groß ist.
Als Engine nutze ich aktuell innoDB, bei MyISAM ist die Größe

Da zu erwarten ist, dass wir nächstes Jahr das doppelte haben, bekomme ich ein bisschen Sorge wegen der Datenbankgröße
Ich meine irgendwo mal gelesen zu haben, dass eine einzelne Datenbanktabelle eine Größe von 1GB nicht überschreiten sollte.

Daher zielt meine Frage auf Folgendes ab:

1. Gibt es Möglichkeiten, eine Datenbanktabelle, die viel Text enthält, kleiner zu halten?


Bitte wie gesagt nicht das "Warum speicherst du Emails in eine Datenbank" als Thema herausstellen.
In dem Fall hat es definitiv einen Grund/Nutzen.

Was ich versucht habe:
Der Wechsel von innoDB auf MyISAM bringt eine Verkleinerung von ca. 6%...jedoch werden SELECT-Anweisungen dann natürlich langsamer ausgeführt.

2. Wie "schlimm" ist es wirklich, wenn eine Datenbanktabelle irgendwann eine Größe von 1 GB erreicht (oder mehr)? Was sind die Konsequenzen? Langsame Select und/oder Insert/Update Performance?

Bin für jeden Tipp dankbar.

LG Daniel

Options: ReplyQuote


Subject
Views
Written By
Posted
Datenbanktabelle klein halten
498
May 27, 2021 12:17AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.