Database
 sql >> Datenbank >  >> RDS >> Database

WordPress – Hinter den Kulissen, Teil 1

Wie oft haben Sie sich schon Gedanken über die Struktur einer bestehenden Datenbank gemacht? Dabei kann es sich um ein 5 Jahre altes Legacy-System oder ein brandneues Open-Source-Projekt handeln. Werfen wir einen Blick auf das ERD-Diagramm der Datenbank hinter dem bekanntesten Content-Management-System:WordPress.

Was ist WordPress und wie funktioniert es?

WordPress ist ein Open-Source-CMS (Content-Management-System), das ursprünglich im Jahr 2003 veröffentlicht wurde. Es begann als Blogging-Plattform, hat sich aber so weit entwickelt, dass es heute für fast alles verwendet werden kann.

Da WordPress ein Open-Source-Projekt ist, haben viele Entwickler seine Funktionalitäten im Laufe der Jahre erweitert. Tausende von Widgets, Designs und Plugins, die für WordPress entwickelt wurden, können gefunden werden. Wie es auf WordPress.org heißt:„WordPress ist nur durch Ihre Vorstellungskraft begrenzt. (Und Tech-Chops.)“ Hinter den Kulissen liefern die serverseitige PHP-Skriptsprache und die MySQL-Datenbank die Leistung.

Für die Zwecke dieses Artikels habe ich WordPress folgendermaßen lokal installiert:

  1. Ich habe WampServer heruntergeladen und installiert, eine Windows-Webentwicklungsumgebung für Apache, PHP und MySQL (Hinweis:Die richtige(n) Variante(n) von Visual C++ Redistributable muss zuerst installiert werden). Dieser Schritt bestand hauptsächlich darin, auf die Schaltfläche „Weiter“ zu klicken.
  2. Als Nächstes habe ich mit phpMyAdmin eine MySQL-Datenbank mit dem Namen „wordpress_database“ erstellt; Natürlich können Sie einen beliebigen Namen wählen und später darauf verweisen.
  3. Abschließend habe ich das eigentliche WordPress-Programm heruntergeladen und installiert. Auch hier war dies meist das Klicken auf „Weiter“.

Während der Installation von WordPress werden Sie aufgefordert, einen Benutzernamen, den Namen der von WordPress verwendeten Datenbank und die Verbindungsdetails anzugeben. Sie müssen den Namen einer vorhandenen MySQL-Datenbank angeben. Außerdem können Sie das Präfix auswählen, das zum Benennen von Tabellen in der Datenbank verwendet wird. (Ich habe „wp_“ gewählt.) Tabellennamen mit einem Präfix zu beginnen, ist eine gängige Praxis in MySQL. Wenn alles gut geht, wird ein zufälliges Passwort für Ihr Projekt generiert und Sie können sich anmelden. Nachdem Sie sich angemeldet haben, sehen Sie das WordPress-Dashboard, das so aussieht:

[

Wir werden nicht mehr über WordPress-Optionen sprechen, da sie nichts mit dem Datenbankdesign zu tun haben. Es gibt Tonnen von Materialien online – und natürlich in Büchern; lesen Sie Bücher ☺ – die diese Themen ziemlich ausführlich behandeln.

Der WordPress Export-/Importprozess

Als Nächstes sehen wir uns die MySQL-Datenbank an, die sich hinter unserer WordPress-Seite befindet. Dazu müssen wir phpMyAdmin öffnen . Der Hauptbildschirm ist unten abgebildet.

Auf der linken Seite des Bildschirms sehen Sie die Datenbank mit dem Namen “wordpress_database” mit erweiterter Tabellenliste. Beachten Sie, dass alle Tabellen das „wp_“ haben Präfix. Der nächste Schritt besteht darin, die Datenbankstruktur aus phpMyAdmin zu exportieren und in Vertabelo importieren.

Verwenden Sie dazu die Schaltfläche „Exportieren“ und wählen Sie dann die Exportmethode „Benutzerdefiniert“. Wählen Sie den Datenbanknamen, den Sie exportieren möchten, und wählen Sie seine Struktur unter Formatspezifische Optionen aus. In diesem Fall wird eine SQL-Datei mit DDL-Anweisungen erstellt und auf der Festplatte gespeichert.

Melden Sie sich danach bei Vertabelo.com an und importieren Sie Ihre SQL-Datei in das neue Datenbankmodell. Klicken Sie im Dashboard auf die Schaltfläche „NEUES MODELL ERSTELLEN“. Füllen Sie das Textfeld „Modellname“ mit dem gewünschten Vertabelo-Modellnamen aus und wählen Sie MySQL 5.5 in der Liste „Datenbank-Engine“ aus.

In den meisten Fällen möchten wir mit einer leeren Datenbank beginnen, was durch Klicken auf die Schaltfläche „MODELLIERUNG STARTEN“ ausreicht. Aber in diesem Fall möchten wir eine vorhandene SQL-Datei verwenden. Um dies zu erreichen, müssen wir:

  1. Wählen Sie „Von SQL“ im Abschnitt „Anfangsmodell“ aus.
  2. Klicken Sie auf die Schaltfläche „Datei auswählen“ und rufen Sie die Datei mit der Schaltfläche „Durchsuchen“ von unserem Computer ab.
  3. Klicken Sie auf die Schaltfläche „SQL importieren“.

Wenn alles geklappt hat, sehen Sie „Das Modell wurde erfolgreich importiert“. Außerdem wird die Schaltfläche „MODELLIERUNG STARTEN“ aktiviert. Klicken Sie darauf und verwenden Sie Ihr vorhandenes Modell.

Wir können jetzt neue Funktionen hinzufügen oder einfach stolz auf uns und unser geschmackvoll dargestelltes Datenbankdesign sein. Denken Sie daran, dieses Bild sagt mehr als tausend Worte!

An dieser Stelle öffnet sich das Modell in Vertabelo und endlich sehen wir unsere Tabellen – und nicht nur als SQL-Code. Wir erhalten so etwas (ich habe die Tabellen ein wenig neu angeordnet):




Das erste, was uns auffallen wird, ist das Fehlen von Beziehungen zwischen den Tabellen. Das liegt daran, dass die standardmäßige WordPress-Installation keine referenzielle Integrität erzwingt. WordPress verwendet die MyISAM-Speicher-Engine, die mehr Funktionalität und bessere Leistung bietet, aber keine Fremdschlüssel unterstützt.

Für die Zwecke dieses Artikels habe ich ein leeres WordPress-Projekt erstellt und das einzige, was ich sehen kann, ist eine leere Seite. Es mag albern klingen, aber das reicht aus, um das WordPress-Datenbankmodell zu erkunden. Egal wie kompliziert eine WordPress-Seite ist, sie verwendet immer die gleichen Tabellen. Die Verwendung desselben Kerncodes und derselben Metafelder gibt WordPress genügend Flexibilität, um Websites auszuführen, unabhängig davon, wie unterschiedlich ihre Funktion, ihr Design oder ihr Stil sind.

Es gibt noch mehr WordPress zu sehen

Wir haben WordPress zu unserem Beispiel gemacht, weil es weit verbreitet und für seine Einfachheit bekannt ist. Wir hätten jedoch auch jedes andere CMS oder jedes andere Projekt verwenden können, das eine Datenbank dahinter hat. Ich wette, Sie können sich viele Situationen vorstellen, in denen Sie Ihr vorhandenes Datenbankprojekt in ein Datenbankdesign-Tool verschieben möchten. Vertabelo bietet die Möglichkeit, bereits entworfene Modelle zu importieren und im System weiter zu bearbeiten. Während der Erstellung dieses Artikels habe ich den Import aus der Datei mit den DDL-Anweisungen verwendet.

In unserem nächsten Artikel stellen wir Beziehungen zwischen Tabellen her und werfen einen genaueren Blick auf die Tabellendefinitionen. In der Zwischenzeit können Sie gerne Ihre Ideen und Ihr Feedback im Kommentarbereich unten teilen.