Themen in diesem Artikel:

  • Plesk mit einer auf einem Remote-Datenbankserver gehosteten Datenbank statt einer lokalen Datenbank installieren
  • Vor- und Nachteile von Plesk mit einer auf einem Remote-Datenbankserver gehosteten Datenbank
  • Schritte zur Installation von Plesk mit einem dedizierten und einem gemeinsam genutzten Remote-Datenbankserver
  • Remote-Datenbank von Plesk in eine lokale Datenbank konvertieren

Plesk benötigt Datenbankserver nicht nur, um seine eigene psa-Datenbank zu speichern, sondern auch für Datenbanken, die von anderen Komponenten verwendet werden, sowie für Datenbanken, die durch das Hosting von Websites und Anwendungen von Hosting-Kunden erstellt werden (z. B. WordPress-Datenbank). Plesk funktioniert mit Datenbankservern auf demselben Server wie Plesk (lokale Datenbankserver) oder mit Servern auf einem Remote-Rechner (Remote-Datenbankserver).

Standardmäßig wird bei der Installation von Plesk auch ein lokaler Datenbankserver installiert. Dieser wird verwendet, um die psa-Datenbank von Plesk zu hosten. Dies gilt auch, wenn gehostete Websites Remote-Datenbankserver nutzen.

Sie können Plesk jedoch auch ohne eine lokale Datenbank installieren und die psa-Datenbank von Plesk auf einem Remote-Datenbankserver hosten.

Bemerkung: Derzeit können Sie nur Plesk für Linux mit der Remote-Datenbank verwenden.

Wenn die Datenbank von Plesk auf einem Remote-Datenbankserver gehostet wird, stehen Ihnen die folgenden Optionen offen:

  • Support des Datenbankservers kann ausgelagert werden.
  • Sie können erweiterte Webtools zur Verwaltung von Datenbanken verwenden, z. B. von Amazon RDS.
  • Sie können Datenbankdienste verwenden, die nicht auf dem Server installiert werden können, auf dem sich Plesk befindet.
  • Mehrere Plesk Datenbanken lassen sich auf einem zentralisierten Datenbankserver hosten, wenn Sie mehr als einen Plesk Server haben.
  • Sie können eine Hochverfügbarkeitsinfrastruktur für Plesk erstellen, indem Sie die Plesk Datenbank auf einem Multi-Node-Datenbank-Cluster hosten (zum Beispiel MariaDB Galera Cluster). Plesk unterstützt die lokale Installation von MariaDB Galera Cluster nicht.

Nachteile der Verwendung von Plesk mit einer Remote-Datenbank:

  • Höhere Kosten (z. B. durch einen zusätzlichen Datenbankserver oder einen AWS-Dienst)
  • Mehr Zeit, Aufwand und Fachwissen für die Installation und Wartung erforderlich (im Vergleich zur Standardinstallation von Plesk)

Installieren von Plesk mit einer Datenbank auf einem Remote-Datenbankserver

Voraussetzungen

Die Schritte zur Installation hängen von der Art des Remote-Datenbankservers ab: dediziert oder gemeinsam genutzt.

Auf einem dedizierten Datenbankserver sind keine anderen Datenbanken oder Datenbankbenutzer vorhanden. Sie müssen einen Admin-Benutzer mit allen Berechtigungen für die Datenbank erstellen. Dann erstellt das Installationsskript von Plesk automatisch die psa-Datenbank von Plesk.

Ein gemeinsam genutzter Datenbankserver verfügt bereits über einige Datenbanken und Datenbankbenutzer. Sie können keinen Admin-Benutzer mit allen Berechtigungen für die Datenbank erstellen. Stattdessen erstellen Sie manuell alle Datenbanken und Datenbankbenutzer, die für die Ausführung von Plesk erforderlich sind.

(Dedizierter Remote-Datenbankserver) So installieren Sie Plesk mit der Datenbank auf einem Remote-Datenbankserver:

Bemerkung: Zunächst müssen Sie ein System zur Datenbankverwaltung auf dem Remote-Datenbankserver installieren. Wir empfehlen dafür MySQL. Wir haben diese Kombination getestet und können bestätigen, dass sie funktioniert.

Bemerkung: Unten finden Sie eine detaillierte Anleitung für Remote-Datenbankserver unter Ubuntu. Wenn Sie eine andere Linux-Distribution verwenden, lesen Sie bitte die Oracle-Dokumentation und gehen Sie dann direkt zu Schritt 5 der Anleitung über.

  1. Melden Sie sich im Remote-Datenbankserver an und installieren Sie den MySQL-Server:

    [mysql_server]$ wget https://repo.mysql.com//mysql-apt-config_0.8.22-1_all.deb
    [mysql_server]$ dpkg -i mysql-apt-config_0.8.22-1_all.deb
    [mysql_server]$ apt update
    [mysql_server]$ apt install mysql-server
    [mysql_server]$ locate my.cnf
    
  2. Legen Sie die Verwendung des nativen Passworts unter my.cnf fest:

    [mysqld]
    default-authentication-plugin=mysql_native_password
    
  3. Starten Sie den MySQL-Server neu, um die Änderungen anzuwenden:

    [mysql_server]$ systemctl restart mysql
    
  4. Öffnen Sie die Anwendung des MySQL-Servers und erstellen Sie einen Datenbank-Superuser:

    [mysql_server]$ mysql
    
    # welcome message output
    
    mysql> CREATE USER 'mysql_admin'@'%' IDENTIFIED BY '<password>';
    mysql> GRANT ALL ON *.* TO 'mysql_admin'@'%' WITH GRANT OPTION;
    
  5. Der Plesk Server muss Zugriff auf den Remote-Datenbankserver haben. Vergewissern Sie sich dazu, dass der Wert des Parameters bind-address für das Remote-Datenbanksystem folgendermaßen lautet:

    bind-address = 0.0.0.0
    

    oder

    bind-address = <IP address of the remote database server the Plesk server will connect to>
    

    Weitere Informationen zum Parameter bind-address finden Sie in der Dokumentation für MySQL und MariaDB.

  6. Überprüfen Sie die Verbindung zwischen dem Plesk Server und dem MySQL-Remote-Server:

    # try to connect to the MySQL server from the Plesk server
    [another_server]$ mysql --host=mysql_server --user=mysql_admin --password=<password>
    
  7. Erstellen Sie einen Admin-Benutzer mit allen Berechtigungen für die Datenbank:

    CREATE USER 'plesk_db_admin'@'%' IDENTIFIED BY '<plesk_db_admin_password>';
    GRANT ALL ON *.* TO 'plesk_db_admin'@'%' WITH GRANT OPTION;
    
  8. Melden Sie sich im Plesk Server an.

  9. Führen Sie auf dem Plesk Server das Installationsskript von Plesk aus und geben Sie den Admin-Benutzer der Datenbank (der im vorherigen Schritt erstellt wurde) über die Umgebungsvariable PLESK_DB_DSN_PREFIX an:

    PLESK_DB_DSN_PREFIX=mysql://plesk_db_admin:<plesk_db_admin_password>@mysql_server/host1_ ./plesk-installer
    

    Bemerkung: Wenn Sie einen bestimmten Datenbankbenutzer und/oder Datenbanknamen verwenden möchten, setzen Sie die DSN-Umgebungsvariablen für die einzelnen Datenbanken anstelle von oder zusammen mit der Variable PLESK_DB_DSN_PREFIX ein. Um zum Beispiel einen Datenbanknamen für Plesk anzugeben und alle anderen Einstellungen unberührt zu lassen, geben Sie die folgenden Umgebungsvariablen an:

    PLESK_DB_DSN_PREFIX=mysql://plesk_db_admin:<plesk_db_admin_password>@mysql_server/host1_
    PLESK_DB_DSN=mysql://plesk_db_admin:<plesk_db_admin_password>@mysql_server/host1_plesk
    

    In diesem Fall wird nach der Installation von Plesk die Datenbank host1_plesk anstelle von host1_psa erstellt.

Sie haben nun festgelegt, dass die Datenbank von Plesk auf dem Remote-Datenbankserver gehostet wird. Jetzt müssen Sie sich nur mehr in Plesk anmelden.

(Gemeinsam genutzter Datenbankserver) So installieren Sie Plesk mit der Datenbank auf einem Remote-Datenbankserver:

Bemerkung: Wir gehen davon aus, dass Sie bereits ein System zur Datenbankverwaltung (z. B. MySQL/MariaDB) auf dem Remote-Datenbankserver eingerichtet haben. Sollte das nicht der Fall sein, beachten Sie die Schritte oben für einen dedizierten Datenbankserver. Dort finden Sie ein Beispiel für die Einrichtung des Systems zu Datenbankverwaltung.

  1. Melden Sie sich im Remote-Datenbankserver an und öffnen Sie die Anwendung des MySQL-Servers:

    mysql
    
  2. Erstellen Sie Datenbanken und Datenbankbenutzern mit den in der Tabelle „Datenbankbenutzer“ angegebenen Berechtigungen:

    CREATE DATABASE host1_psa; # Plesk Database
    CREATE USER 'plesk_db_user'@'%' IDENTIFIED BY '<plesk_db_user_password>';
    GRANT ALL ON host1_psa.* TO 'plesk_db_user'@'%' WITH GRANT OPTION;
    
    CREATE DATABASE host1_apsc; # APSC Database
    CREATE USER 'apsc_db_user'@'%' IDENTIFIED BY '<apsc_db_user_password>';
    GRANT ALL ON host1_apsc.* TO 'apsc_db_user'@'%' WITH GRANT OPTION;
    
    CREATE DATABASE host1_roundcubemail; # Roundcube Webmail Database
    CREATE USER 'roundcube_db_user'@'%' IDENTIFIED BY '<roundcube_db_user_password>';
    GRANT ALL ON host1_roundcubemail.* TO 'roundcube_db_user'@'%' WITH GRANT OPTION;
    
    CREATE DATABASE host1_horde; # Horde Webmail Database
    CREATE USER 'horde_db_user'@'%' IDENTIFIED BY '<horde_db_user_password>';
    GRANT ALL ON host1_horde.* TO 'horde_db_user'@'%' WITH GRANT OPTION;
    
  3. Führen Sie auf dem Plesk Server das Installationsskript von Plesk aus und geben Sie die Datenbanken und Datenbankbenutzer (im vorherigen Schritt erstellt) über die Umgebungsvariablen PLESK_DB_DSN, PLESK_DB_APSC_DSN, PLESK_DB_ROUNDCUBE_DSN und/oder PLESK_DB_HORDE_DSN an.

    PLESK_DB_DSN=mysql://plesk_db_user:<plesk_db_user_password>@mysql_server/host1_psa \
    PLESK_DB_APSC_DSN=mysql://apsc_db_user:<apsc_db_user_password>@mysql_server/host1_apsc \
    PLESK_DB_ROUNDCUBE_DSN=mysql://roundcube_db_user:<roundcube_db_user_password>@mysql_server/host1_roundcubemail \
    # and/or PLESK_DB_HORDE_DSN=mysql://horde_db_user:<horde_db_user_password>@mysql_server/host1_horde \
    ./plesk-installer
    
  4. Der Plesk Server muss Zugriff auf den Remote-Datenbankserver haben. Vergewissern Sie sich dazu, dass der Wert des Parameters bind-address für das Remote-Datenbanksystem folgendermaßen lautet:

    bind-address = 0.0.0.0
    

    oder

    bind-address = <IP address of the remote database server the Plesk server will connect to>
    

    Weitere Informationen zum Parameter bind-address finden Sie in der Dokumentation für MySQL und MariaDB.

Sie haben nun festgelegt, dass die Datenbank von Plesk auf dem Remote-Datenbankserver gehostet wird. Jetzt müssen Sie sich nur mehr in Plesk anmelden.

Konvertieren einer Remote-Datenbank von Plesk in eine lokale Datenbank

Wenn Sie Plesk mit einer Remote-Datenbank installiert haben, können Sie wieder zur Standardinstallation von Plesk wechseln, indem Sie die Remote-Datenbank in eine lokale Datenbank konvertieren.

Bemerkung: Von einer lokalen zu einer Remote-Datenbank zu wechseln, ist derzeit nicht möglich.

Voraussetzungen

  • Remote-Datenbankserver, auf dem die Datenbank von Plesk gehostet wird
  • Linux-Server, auf dem Plesk installiert ist (diesen Server nennen wir Plesk Server)

So konvertieren Sie eine Remote-Datenbank von Plesk in eine lokale Datenbank:

  1. Kopieren Sie ein Speicherabbild der folgenden Datenbanken vom Remote-Datenbankserver: psa, apsc, roundcubemail und/oder horde:

    plesk db dump host1_apsc host1_psa host1_roundcubemail > dump_from_host1.sql
    
  2. Entfernen Sie etwaige Präfixe aus den Datenbanknamen:

    sed -i 's/host1_apsc/apsc/g' dump_from_host1.sql
    sed -i 's/host1_psa/psa/g' dump_from_host1.sql
    sed -i 's/host1_roundcubemail/roundcubemail/g' dump_from_host1.sql
    sed -i 's/host1_horde/horde/g' dump_from_host1.sql
    
  3. Melden Sie sich im Plesk Server an und benennen Sie die Datei /etc/psa/private/dsn.ini um, die die Konfigurationsdaten der Remote-Datenbank enthält. Dadurch wird die Unterstützung für Remote-Datenbanken auf dem Plesk Server deaktiviert:

    mv /etc/psa/private/dsn.ini /etc/psa/private/dsn.ini.backup
    
  4. Erstellen Sie einen Admin-Benutzer für die Datenbank:

    PSA_PASSWORD=<new_admin_password> plesk sbin ch_admin_passwd
    
  5. Stellen Sie das kopierte Speicherabbild auf dem Plesk Server bereit:

    plesk db < dump_from_host1.sql
    
  6. Prüfen Sie die Datenbank auf Probleme und beheben Sie diese (falls vorhanden) mit dem Dienstprogramm plesk repair db:

    plesk repair db
    

Sie haben die Konvertierung abgeschlossen. Die Datenbank für Plesk wird nun auf dem lokalen Rechner gehostet. Sie können sich jetzt in Plesk anmelden.

Referenzen

Datenbankbenutzer

image db users

Umgebungsvariablen

DSN-Umgebungsvariable für alle Datenbanken nach Präfix

Umgebungsvariable Format des Werts Beschreibung
PLESK_DB_DSN_PREFIX mysql://{plesk_db_admin}:{password}@{remote_db_host}/{db_prefix}

Geben Sie diese Variable an, wenn das Installationsprogramm alle erforderlichen Datenbanken erstellen soll, indem das db_prefix-Präfix an deren Namen anhängt wird.

Bemerkung:

Wenn db_prefix leer ist, werden die Standardnamen für die Datenbank verwendet: psa, apsc, roundcubemail und/oder horde.

DSN-Umgebungsvariablen nach Datenbank

Umgebungsvariable Format des Werts Beschreibung
PLESK_DB_DSN mysql://{plesk_db_user}:{password}@{remote_db_host}/{plesk_db_name}

Geben Sie diese Variable an, wenn das Installationsprogramm plesk_db_name als Name für die Datenbank von Plesk verwenden soll. Falls die Datenbank nicht bereits vorhanden ist, muss plesk_db_user die Berechtigung haben, die Datenbank plesk_db_name zu erstellen (z. B. plesk_db_admin).

Bemerkung:

Wenn plesk_db_name leer gelassen wird, wird der Standardname psa verwendet.

PLESK_DB_APSC_DSN mysql://{apsc_db_user}:{password}@{remote_db_host}/{apsc_db_name}

Geben Sie diese Variable an, wenn das Installationsprogramm apsc_db_name als Name für die Datenbank von APSC verwenden soll. Falls die Datenbank nicht bereits vorhanden ist, muss apsc_db_user die Berechtigung haben, die Datenbank apsc_db_name zu erstellen (z. B. apsc_db_admin).

Bemerkung:

Wenn apsc_db_name leer gelassen wird, wird der Standardname apsc verwendet.

PLESK_DB_ROUNDCUBE_DSN mysql://{roundcube_db_user}:{password}@{remote_db_host}/{roundcube_db_name}

Geben Sie diese Variable an, wenn das Installationsprogramm roundcube_db_name als Name für die Datenbank von roundcube verwenden soll. Falls die Datenbank nicht bereits vorhanden ist, muss roundcube_db_user die Berechtigung haben, die Datenbank roundcube_db_name zu erstellen (z. B. roundcube_db_admin).

Bemerkung:

Wenn roundcube_db_name leer gelassen wird, wird der Standardname roundcubemail verwendet.

PLESK_DB_HORDE_DSN mysql://{horde_db_user}:{password}@{remote_db_host}/{horde_db_name}

Geben Sie diese Variable an, wenn das Installationsprogramm horde_db_name als Name für die Datenbank von Horde verwenden soll. Falls die Datenbank nicht bereits vorhanden ist, muss horde_db_user die Berechtigung haben, die Datenbank horde_db_name zu erstellen (z. B. horde_db_admin).

Bemerkung:

Wenn horde_db_name leer gelassen wird, wird der Standardname horde verwendet.