WordPress und gridSQL – der smarte Weg in die Zukunft


WordPress und gridSQL

Du verwendest bereits WordPress und MySQL um deine Homepage zu verwalten? Oder bist du auf der Suche nach automatischer Skalierung, um perfekt aufgestellt zu sein? Dann bist du bei uns genau richtig. Wir bieten als langjährige IT-Experten Autoscaling für mehr Performance und kümmern uns um die Bereitschaft und Funktionalität deines Services.
Hast du schon mal etwas von PaaS oder gridSQL gehört? gridSQL ist eine von Tech4Hostings smarten Lösungen für PaaS. Mit Tech4Hosting kannst du innerhalb weniger Minuten die perfekten Voraussetzungen für deine Website schaffen und direkt loslegen.
Um beispielsweise auf Werbekampagnen mit viele Anfragen vorbereitet zu sein, stellen wir euch zwei Lösungen vor:

Clusterlösung – Big Solution

Die Big Solution ist die sog. Cluster Lösung, wobei mit Cluster einen Verbund aus mehreren Komponenten gemeint ist. Das bedeutet, dass Database, WordPress und alle benötigte Komponenten auf einem einzigen Server laufen. Dadurch ist oftmals trotz wenigen Anfragen die Leistungskapazität des Servers erreicht, und damit auch die Kosten dauerhaft hoch.
Es kann aber auch sein, dass durch sehr viele Anfragen (HTTP-Requests), etwa in Folge einer Marketingkampagne, eine kritische Größe überschritten wird. Hier kann es vorkommen, dass die Leistungskapazität bei hohem Traffic doch niedrig ist, was zu einer schlechten Performance führen könnte.

gridSQL- Smart Solution

Die vorhandenen Ressourcen können mittels smarter Lösungen, wie gridSQL, effizienter eingesetzt werden, da mit ihrer Hilfe eine automatische Skalierung möglich ist. Ein weiterer Vorteil ist der Aspekt der strukturellen Datensicherheit. Grundsätzlich ist es sinnvoll aus Sicherheitsgründen Datenbanken auszulagern. Die Hauptziele der Datenbank-Auslagerung sind die Optimierung der Performance und die Langlebigkeit der Datenbank selbst. Weiterhin wird durch das Entfallen von Betreuung der gridSQL bzw. Betriebssysteme eine deutliche Kostensenkung erreicht. Dieses spielt beispielsweise bei einem begrenzten Budget eine wichtige Rolle. Daher haben wir einen unkomplizierten Weg für dich, um einfach und schnell deine Ressourcen bewusst einzusetzen.

Vergleich Big- und Smart Solution

Zu deiner Orientierung habe ich noch einmal innerhalb einer Tabelle die entscheidenden Fakten zum Cluster und der smarten Lösung dargestellt:

Funktionen Big Solution Smart Solution
Hohe Verfügbarkeit Ja Ja
Hohe Performance Ja Ja
Auslagerung der Datenbank Nein Ja
Kostenfaktor Hoch Niedrig
Automatische Skalierung Nein Ja
Zeitfaktor Zeitaufwendig Zeitersparnis
IT-Fachkraft für Pflege Wird zusätzlich benötigt Keine zusätzliche IT-Fachkraft
Schnelligkeit Langsam Schnell
Langlebigkeit Nein Ja
Predictive Maintenance Nein Ja

Im Folgenden werde ich dir Schritt für Schritt zeigen, wie du den gridSQL-Service über unser Panel anlegst und konfigurierst. Anschließend werde ich dir zeigen, wie du deine Datenbank zum gridSQL-Service übertragen und anpassen kannst. Es wird natürlich vorausgesetzt, dass du bereits ein laufenden Server mit WordPress und MySQL besitzt. Falls dies nicht der Fall ist, kannst du dir mit Hilfe dieses Tutorials einen LAMP-Server bereitstellen. Hier musst du darauf achten, dass dieses Tutorial für Ubuntu 16.04 geschrieben ist, für Version 18.04 musst du natürlich einige Befehle anpassen:

Schritt 1 – gridSQL-Service erstellen

Um bei uns ein gridSQL-Service erstellen zu können, musst du dich erst in unserem Tech4Hosting Panel anmelden. Hier kannst du zusätzlich das Tutorial “getting-started-paas-service” nutzen:

Nachdem du dich angemeldet hast, navigiere in der Menüleiste auf “gridSQL” und klicke auf “gridSQL Service erstellen”. Dafür wählst du mysql aus. Am Ende klicke auf “Service erstellen”.

gridSQL Service erstellen

gridSQL Service erstellen

Nachdem du deinen Dienst erstellt hast, musst du diesen auch mit dem Server verbinden. In folgenden Screenshots zeige ich dir, wie das funktioniert. Wichtig ist dabei, dass der Server gestoppt ist. Hier kannst du deinen Service per Drag & Drop mit deinem Server verbinden.

PaaS mit Server verbinden

Du hast jetzt einen funktionierenden gridSQL-Service und kannst dich nun mit gridSQL verbinden:

Schritt 2 – mit gridSQL verbinden

Als Nächstes musst du dich einmal mittels Terminal mit folgenden Befehl auf deinem Server einloggen:

 # ssh root@IPv4

Tipp: Falls bei der Anmeldung IPv4-Fingerprint-Probleme auftauchen, kannst du die Datei öffnen und die entsprechende Zeile löschen. Den Löschvorgang sollte jedoch nicht willkürlich durchgeführt werden, da Fingerprint zum einen die Host-Identifikation erleichtert und zum anderen eine Man-in-the-Middle Attack verhindert. Also bitte nur löschen, wenn du den ssh-Server neu aufsetzen möchtest.

Die IP-Adresse findest du bei uns im Panel. Nach der Installation des Clients kannst du dich über die IPv6 Adresse sowie den Port und die generierten Zugangsdaten mit deinem Service verbinden. Denke daran, dass sich der Server, von dem du dich zu deinem Service verbindest, in der gleichen Security Zone wie der PaaS Service selbst befinden muss.

Tipp: um der IPv6-Adresse einen anderen Namen zu geben, gehst du in das /var/www/wordpress Verzeichnis und öffnest die folgende Datei:

 # vim /etc/hosts 

IPv6 umbenennen
Wenn du dies gemacht hast, kannst du mit folgendem Befehl speichern und das Dokument schließen:

 :wq 

Kopiere im wordpress-Verzeichnis einmal die Datei wp-config-sample.php unter dem Namen wp-config.php, um dort später die Konfigurationen vornehmen zu können:

 # cp wp-config-sample.php wp-config.php 

Schritt 3 – Datenbank Übertragung

Vorbereitung

Bevor du deine Daten auf gridSQL importieren kannst, musst du dich erst auf deinem PaaS MySQL Prompt einloggen:

 $ mysql -h IPv6 -u root -p

Jetzt musst du eine Datenbank erstellen. In meinem Beispiel heißt die Datenbank, die ich importieren möchte, wordpress:

 mysql> create database wordpress; 

Mit folgendem Befehl prüfst du, ob die Datenbank „wordpress“ erstellt ist:

 mysql> show databases; 

Dann nutze bitte diese auch, um dafür einen Benutzer mit den benötigten Rechten zu hinterlegen:


mysql> use wordpress;
mysql> grant all privileges on wordpress.* to 'Benutzername'@'%' identified by 'Passwort';

Tipp: Falls du bei der Benutzererstellung ein Problem mit dem Plugin Validate_Password hast, kannst du diese auch löschen:

 mysql> uninstall plugin validate_password; 

Jetzt kannst du danach Ausschau halten, ob dein neuer User auch hinterlegt ist. Als nächstes kannst du die Rechte einmal aktualisieren und rausgehen:


mysql> select host, user from mysql.user;
mysql> flush privileges;
mysql> exit;

Konfiguration

Als Nächstes passe die Konfigurationsdatei an. Hier trage bitte Datenbankname, -username, -passwort und die IPv6-Adresse anstatt Localhost für DB_HOST ein. Allerdings ist es empfehlenswert, dass du den Hostnamen, der am Anfang in der Datei /etc/hosts hinterlegt wurde benutzt, da PHP sich mit IPv6 meistens schwer tut:

 $ vim /var/www/wp-config.php 

wp-config.php konfigurieren

Nachdem du die Konfigurationsdatei angepasst hast, öffne einen Browser deiner Wahl. Dort gib bitte die IPv4 deines Servers an. Es erscheint eine Standardinstallation von WordPress. Bitte fülle die gekennzeichnete Felder aus und installiere WordPress. Am Ende logge dich mit deinen Credentials ein:

WordPress installieren: wp-admininstall.php

WordPress Dashboard

Datenbankexport

Um deine Datenbank zu exportieren, brauchst du den sogenannten mysqldump-Befehl:

 $ mysqldump -h test.db -u  root -p wordpress > wordpress_backup.sql 

Du kannst auch kontrollieren, ob das Exportieren geklappt hat. Dafür schaust du in deiner Datei: wenn dort kein Error auftaucht, hat es auch geklappt:

 $ vim wordpress_backup.sql 

Aus MySQL-Datenbank Backup erstellen

Datenbankimport

Gehe bitte noch einmal in deinem PaaS MySQL Prompt und lösche dort die Standard Datenbank „wordpress“. Wenn du deinen Browser aktualisierst, erscheint Error:


$ mysql -h test.db  -u root -p 
mysql> drop database wordpress;
mysql> exit;

WordPress Error: Can't select database

Dies zeigt einfach, dass momentan keine Datenbank vorhanden ist. Als nächstes kannst du deine exportierte Datenbank importieren. Zuerst musst du eine neue Datenbank anlegen (in meinem Beispiel heißt die Datenbank ebenso wordpress) und sie dann mit dem Import Befehl befüllen:


$ mysql -h test.db -u root -p 
mysql> create database wordpress;
mysql> use wordpress;
mysql> show tables;
mysql> exit;

Hier siehst du, dass die angelegte Datenbank „wordpress“, leer ist:

MySQL: Tabellen einer Datenbank zeigen

Nun kannst du die Datenbank mit deinen Daten befüllen:

 $ mysql -h test.db -u root -p wordpress 

Aktualisiere jetzt deinen Browser. Wie du sehen kannst, ist WordPress erneut erreichbar.

WordPress Startseite

Herzlichen Glückwunsch! Der Import hat geklappt und du zählst jetzt zu denjenigen, die ganz bewusst ihre Ressourcen einsetzen und auf dem aktuellen Stand der Technik sind.

Zurück zur Tutorial Übersicht Back to Tutorial Overview

© 2002-2023 Phox inc. all rights reserved.

© 2002-2023 Phox inc. all rights reserved.