Dans cette section, vous découvrirez :

  • Comment installer Plesk sans base de données locale Plesk, mais avec un serveur de bases de données distant.
  • Les avantages et les inconvénients d’une base de données hébergée sur un serveur de bases de données distant.
  • Les procédures d’installation pour un serveur de base de données distant partagé et dédié.
  • Comment convertir une base de données Plesk distante en base de données locale.

Plesk requière des serveurs de bases de données pour stocker sa propre base de données psa, les bases de données utilisées par ses composants ainsi que les bases de données créées lors de l’hébergement de sites web et d’applications de clients (par exemple : une base de données WordPress). Plesk peut fonctionner avec des serveurs de bases de données situés sur le même serveur que Plesk (serveurs de bases de données locaux) ou sur une machine distante (serveurs de bases de données distants).

Par défaut, l’installation de Plesk installer également un serveur de base de données local. Plesk l’utilise pour héberger sa propre base de données psa. Cette installation à lieu également si les sites web hébergés utilisent des serveurs de bases de données distants.

Toutefois, vous pouvez installer Plesk sans utiliser de base de données locale et héberger la base de données Plesk psa sur un serveur de bases de données distant.

Note: Pour le moment, vous pouvez utiliser Plesk pour Linux seulement avec une base de données distante.

Avec une base de données Plesk sur un serveur de bases de données distant, vous pouvez :

  • Externaliser la prise en charge du serveur de bases de données distant.
  • Utiliser des outils avancés de gestion de bases de données web, comme ceux proposés par Amazon RDS.
  • Utiliser un service de base de données spécifique qui ne peut pas être installé sur le même serveur que Plesk.
  • Héberger plusieurs bases de données sur un serveur de bases de données centralisé si vous avez plusieurs serveurs Plesk.
  • Créez une infrastructure hautement disponible pour Plesk en hébergeant la base de données Plesk sur un cluster de bases de données multi-nœuds (par exemple : un cluster MariaDB Galera Cluster). Plesk ne prend pas en charge l’installation locale d’un cluster MariaDB Galera Cluster.

Inconvénients de Plesk avec une base de données distante :

  • Coûts financiers plus élevés (qu’il s’agisse d’un serveur de base de données supplémentaire ou d’un service AWS).
  • Requiert plus de temps, d’efforts et d’expertise pour l’installation et la maintenance (comparé à l’installation Plesk par défaut).

Installation de Plesk avec sa base de données sur un serveur de bases de données distant

Prérequis

La procédure exacte d’installation varie en fonction du type de serveur de bases de données distant, dédié ou partagé.

Sur un serveur de bases de données dédié, il n’y a aucune base de données ni utilisateur de bases de données antérieur. Vous pouvez créer un utilisateur admin pour la base de données avec tous les droits. Ensuite, le script d’installation de Plesk crée automatiquement la base de données Plesk psa.

Sur un serveur de base de données partagé, il y a déjà des bases de données et des utilisateurs de bases de données. Vous ne pouvez pas créer d’utilisateur admin pour la base de données avec tous les droits. À la place, vous pouvez créer manuellement toutes les bases de données et tous les utilisateurs de bases données nécessaires pour exécuter Plesk.

(Serveur de bases de données distant dédié) Pour installer Plesk avec ses bases de données sur un serveur de bases de données distant :

Note: Pour commencer, vous devez installer un système de gestion de base de données sur le serveur de bases de données distant. Pour le moment, nous vous recommandons d’utiliser MySQL : nous l’avons testé et il s’avère fonctionnel.

Note: Ci-dessous vous trouverez une procédure pas-à-pas pour le serveur de bases de données distant exécuté sur Ubuntu. Pour les autres distributions Linux, consultez la documentation Oracle, puis passez directement à l’étape 5 de la procédure ci-dessous.

  1. Connectez-vous au serveur de bases de données distant et installez le serveur MySQL :

    [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. Ajoutez les informations relatives au mot de passe natif à my.cnf :

    [mysqld]
    default-authentication-plugin=mysql_native_password
    
  3. Redémarrez le serveur MySQL pour appliquer les modifications :

    [mysql_server]$ systemctl restart mysql
    
  4. Accédez au serveur MySQL et créez un superuser pour la base de données :

    [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. Assurez-vous que le serveur Plesk puisse accéder au serveur de bases de données distant. Pour cela, vérifiez la valeur du paramètre bind-address du système de bases de données distant. La valeur doit être :

    bind-address = 0.0.0.0
    

    ou

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

    Pour en savoir plus sur le paramètre bind-address , consultez la documentation MySQL ou MariaDB.

  6. Vérifiez la connexion au serveur MySQL distant depuis le serveur Plesk :

    # try to connect to the MySQL server from the Plesk server
    [another_server]$ mysql --host=mysql_server --user=mysql_admin --password=<password>
    
  7. Créez un utilisateur admin pour la base de données et accordez-lui tous les droits :

    CREATE USER 'plesk_db_admin'@'%' IDENTIFIED BY '<plesk_db_admin_password>';
    GRANT ALL ON *.* TO 'plesk_db_admin'@'%' WITH GRANT OPTION;
    
  8. Connectez-vous au serveur Plesk.

  9. Sur le serveur Plesk, exécutez le script d’installation Plesk et précisez l’utilisateur admin de la base de données (créé à l’étape précédente) via la variable d’environnement PLESK_DB_DSN_PREFIX :

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

    Note: Pour utiliser des utilisateurs de bases de données et/ou des noms de bases de données spécifiques, utilisez les DSN variables d’environnement DSN par base de données à la place de ou avec la variable PLESK_DB_DSN_PREFIX. Par exemple, pour spécifier un nom de base de données pour Plesk et conserver les autres éléments par défaut, saisissez les variables d’environnement suivantes :

    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
    

    Dans ce cas, une fois que vous avez installé Plesk, la base de données host1_plesk sera créée à la place de host1_psa.

Vous avez configuré tous les paramètres requis pour que Plesk héberge sa base de données sur le serveur de bases de données distant. Il ne vous reste plus qu’une étape : la première connexion à Plesk.

(Serveur de base de données partagé) Pour installer Plesk avec sa base de données sur un serveur de bases de données distant :

Note: Nous supposons que votre système de gestion de bases de données est déjà configuré (par exemple : MySQL/MariaDB) sur le serveur de bases de données distant. Dans le cas contraire, consultez la procédure ci-dessus pour le serveur de base de données dédié. Vous y trouverez des exemples de configuration de systèmes de gestion de bases de données.

  1. Connectez-vous au serveur de bases de données distant et accédez à l’application serveur MySQL :

    mysql
    
  2. Créez des bases de données et des utilisateurs de bases de données avec les droits précisés dans le tableau « Utilisateurs de bases de données » :

    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. Sur le serveur Plesk, exécutez le script d’installation de Plesk en spécifiant les bases de données et les utilisateurs de bases de données (créés à l’étape précédente) via les variables d’environnement suivantes : PLESK_DB_DSN, PLESK_DB_APSC_DSN, PLESK_DB_ROUNDCUBE_DSN et/ou``PLESK_DB_HORDE_DSN``.

    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. Assurez-vous que le serveur Plesk puisse accéder au serveur de bases de données distant. Pour cela, vérifiez la valeur du paramètre bind-address du système de bases de données distant. La valeur doit être :

    bind-address = 0.0.0.0
    

    ou

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

    Pour en savoir plus sur le paramètre bind-address , consultez la documentation MySQL ou MariaDB.

Vous avez configuré tous les paramètres requis pour que Plesk héberge sa base de données sur le serveur de bases de données distant. Il ne vous reste plus qu’une étape : la première connexion à Plesk.

Convertir une base de données distante Plesk en base de données locale

Si vous avez installé Plesk avec une base de données distante et si vous changez d’avis, vous pouvez convertir la base de données distante Plesk en base de données locale. Vous obtenez ainsi l’installation Plesk par défaut.

Note: La conversion inverse n’est pas prise en charge pour le moment. Vous ne pouvez pas convertir une base de données locale Plesk en base de données distante.

Prérequis

  • Un serveur de bases de données distant sur lequel la base de données Plesk est hébergée.
  • Un serveur Linux sur lequel Plesk est installé. Nous l’appelons le « serveur Plesk ».

Pour convertir la base de données distante Plesk en base de données locale :

  1. Copiez un dump des bases de données suivantes depuis le serveur de bases données distant : psa, apsc, roundcubemail et/ou horde :

    plesk db dump host1_apsc host1_psa host1_roundcubemail > dump_from_host1.sql
    
  2. Supprimez les préfixes (le cas échéant) des noms des bases de données :

    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. Connectez-vous au serveur Plesk et renommez le fichier /etc/psa/private/dsn.ini qui contient les données de configuration de la base de données distante. Cela désactivera la prise en charge de la base de données distante sur le serveur Plesk :

    mv /etc/psa/private/dsn.ini /etc/psa/private/dsn.ini.backup
    
  4. Créez un utilisateur admin pour la base de données :

    PSA_PASSWORD=<new_admin_password> plesk sbin ch_admin_passwd
    
  5. Déployez le dump copié sur le serveur Plesk :

    plesk db < dump_from_host1.sql
    
  6. Vérifiez s’il y a des problèmes avec la base de données et corrigez-les (le cas échéant) à l’aide de l’utilitaire plesk repair db :

    plesk repair db
    

Vous avez terminé la conversion ! Désormais, Plesk héberge sa base de données sur la machine locale. Vous pouvez désormais vous connecter à Plesk.

Références

Utilisateurs de la base de données

image db users

Variables d’environnement

Variable d’environnement DSN pour toutes les bases de données avec préfixe

Variable d’environnement Format de la valeur Description
PLESK_DB_DSN_PREFIX mysql://{plesk_db_admin}:{password}@{remote_db_host}/{db_prefix}

Spécifiez cette variable si vous voulez que le programme d’installation crée toutes les bases de données dont il a besoin en ajoutant le préfixe db_prefix à leur nom.

Note:

Si db_prefix` reste vierge, les noms par défaut des bases de données seront utilisés : psa, apsc, roundcubemail et/ou horde.

Variables d’environnement DSN par base de données

Variable d’environnement Format de la valeur Description
PLESK_DB_DSN mysql://{plesk_db_user}:{password}@{remote_db_host}/{plesk_db_name}

Spécifiez cette variable si vous voulez que le programme d’installation utilise plesk_db_name``en tant que nom de base de données pour Plesk. Vous devez ajouter la base de données à l'avance ou ``plesk_db_user doit disposer des droits pour créer la base de données plesk_db_name (par exemple : indiquez plesk_db_admin).

Note:

Si plesk_db_name reste vierge, le nom par défaut psa sera utilisé.

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

Spécifiez cette variable si vous voulez que le programme d’installation utilise apsc_db_name``en tant que nom de base de données APSC. Vous devez ajouter la base de données à l'avance ou ``apsc_db_user doit disposer des droits pour créer la base de données apsc_db_name (par exemple : indiquez plesk_db_admin).

Note:

Si apsc_db_name reste vierge, le nom par défaut apsc sera utilisé.

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

Spécifiez cette variable si vous voulez que le programme d’installation utilise roundcube_db_name``en tant que nom de base de données Roundcube. Vous devez ajouter la base de données à l'avance ou ``roundcube_db_user doit disposer des droits pour créer la base de données roundcube_db_name (par exemple : indiquez plesk_db_admin).

Note:

Si roundcube_db_name reste vierge, le nom par défaut roundcubemail sera utilisé.

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

Spécifiez cette variable si vous voulez que le programme d’installation utilise horde_db_name en tant que nom de base de données Horde. Vous devez ajouter la base de données à l’avance ou horde_db_user doit disposer des droits pour créer la base de données horde_db_name (par exemple : indiquez plesk_db_admin).

Note:

Si horde_db_name reste vierge, le nom par défaut horde sera utilisé.