Guide de gestion et de migration des fichiers de base de données ServBay
En tant qu’environnement Web local puissant, ServBay intègre plusieurs systèmes de gestion de base de données populaires et organise leurs fichiers de données de manière normalisée. Comprendre la structure de stockage par défaut des fichiers de base de données dans ServBay est essentiel pour permettre aux développeurs d’effectuer sauvegardes, restaurations et migrations en toute sécurité.
Ce guide détaille la structure de stockage des fichiers de base de données dans ServBay et fournit des instructions pratiques pour la gestion de fichiers et la migration entre différents environnements via les outils de ligne de commande standard.
TIP
ServBay propose des fonctionnalités de sauvegarde et de restauration automatiques ou manuelles pour les bases de données MySQL, MariaDB et PostgreSQL. Consultez la section Sauvegarde et restauration pour en savoir plus.
Structure de stockage par défaut des fichiers de base de données ServBay
Pour simplifier la gestion et l’isolation des données entre différentes versions de bases de données, ServBay rassemble tous les fichiers de bases de données dans le répertoire /Applications/ServBay/db
. Ce dossier est organisé par type de base de données, et chaque type est ensuite subdivisé en sous-dossiers selon la version majeure.
Structure typique du répertoire /Applications/ServBay/db
:
/Applications/ServBay/db
├── mysql
│ ├── 8.0
│ └── 8.1
├── mariadb
│ ├── 10.10
│ ├── 10.11
│ ├── 10.5
│ ├── 10.6
│ ├── 10.7
│ ├── 10.8
│ ├── 10.9
│ ├── 11.0
│ ├── 11.1
│ ├── 11.2
│ └── 11.3
├── postgresql
│ ├── 10
│ ├── 11
│ ├── 12
│ ├── 13
│ ├── 14
│ ├── 15
│ └── 16
└── redis
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Explication de la structure
/Applications/ServBay/db
: répertoire principal de stockage de toutes les données de bases de données dans ServBay.mysql
: contient les fichiers de données des bases MySQL. Les sous-dossiers correspondent aux versions majeures (8.0
,8.1
…).mariadb
: contient les fichiers de données des bases MariaDB, triées également par version majeure (10.11
,11.3
…).postgresql
: contient les fichiers de données des bases PostgreSQL, également classées par version majeure (15
,16
…).redis
: stocke les fichiers de persistance pour Redis, notamment le fichierdump.rdb
.
Grâce à cette organisation, il est possible d’installer et d’exécuter plusieurs versions majeures d’un même moteur de base de données en parallèle dans ServBay, chaque instance ayant des fichiers bien isolés et indépendants.
Gestion des fichiers de base de données
Dans un environnement de développement local, il est fréquent de devoir effectuer des sauvegardes, des restaurations ou des migrations de bases de données. Voici comment procéder avec les outils de commande standards. Attention : il est recommandé d’utiliser le terminal fourni par ServBay ou de s’assurer que les variables d’environnement PATH incluent le répertoire bin
de ServBay afin que les clients et utilitaires de bases soient accessibles.
Sauvegarder une base de données
La sauvegarde régulière est cruciale pour la sécurité de vos données. Voici comment sauvegarder différents types de bases de données sous ServBay.
Sauvegarder MySQL
L’outil standard pour sauvegarder une base MySQL est mysqldump
.
# Lancez le terminal ServBay ou vérifiez que le PATH contient bien ServBay/bin
# Par exemple : export PATH="/Applications/ServBay/bin:$PATH"
mysqldump -u votre_utilisateur -p votre_base > /Applications/ServBay/backup/votre_base.sql
2
3
4
votre_utilisateur
: remplacez par votre nom d'utilisateur MySQL.votre_base
: la base de données à sauvegarder./Applications/ServBay/backup/votre_base.sql
: le chemin/fichier de destination. Il est conseillé d’enregistrer les sauvegardes hors du répertoire ServBay, par exemple dans votre dossier utilisateur.
Sauvegarder MariaDB
La méthode est identique à celle de MySQL, via mysqldump
.
# Lancez le terminal ServBay ou vérifiez que le PATH contient bien ServBay/bin
mysqldump -u votre_utilisateur -p votre_base > /Applications/ServBay/backup/votre_base.sql
2
3
- Les paramètres sont identiques à ceux présentés pour MySQL.
Sauvegarder PostgreSQL
Utilisez pg_dump
. Notez que dans ServBay, PostgreSQL est généralement configuré pour utiliser le socket Unix domain par défaut situé dans /Applications/ServBay/tmp
; n'oubliez donc pas le paramètre -h /Applications/ServBay/tmp
.
# Lancez le terminal ServBay ou vérifiez que le PATH contient bien ServBay/bin
pg_dump -h /Applications/ServBay/tmp -U votre_utilisateur -d votre_base -F c -b -v -f /Applications/ServBay/backup/votre_base.dump
2
3
-h /Applications/ServBay/tmp
: chemin du socket PostgreSQL.-U votre_utilisateur
: nom d’utilisateur PostgreSQL.-d votre_base
: base à sauvegarder.-F c
: format archive personnalisé (recommandé).-b
: inclut les objets volumineux (blobs).-v
: mode verbeux.-f /Applications/ServBay/backup/votre_base.dump
: chemin/fichier de la sauvegarde.
Sauvegarder Redis
La sauvegarde de Redis passe généralement par la copie du fichier de persistance dump.rdb
.
# Lancez le terminal ServBay
# Vérifiez que Redis est en cours d’exécution, ou que le snapshot BGSAVE est bien configuré
cp /Applications/ServBay/db/redis/dump.rdb /Applications/ServBay/backup/dump.rdb
2
3
4
/Applications/ServBay/db/redis/dump.rdb
: fichier de persistance Redis./Applications/ServBay/backup/dump.rdb
: destination souhaitée du backup.
Restaurer une base de données
En cas de perte de données ou de besoin de rollback, suivez ces instructions pour restaurer votre sauvegarde.
Restaurer MySQL
Utilisez le client mysql
:
# Lancez le terminal ServBay
mysql -u votre_utilisateur -p votre_base < /Applications/ServBay/backup/votre_base.sql
2
3
votre_utilisateur
: votre utilisateur MySQL.votre_base
: base existante dans laquelle restaurer les données (à créer au préalable si besoin)./Applications/ServBay/backup/votre_base.sql
: chemin vers votre fichier de sauvegarde.
Restaurer MariaDB
Procédez de la même façon qu’avec MySQL, via le client mysql
:
# Lancez le terminal ServBay
mysql -u votre_utilisateur -p votre_base < /Applications/ServBay/backup/votre_base.sql
2
3
- Les paramètres sont identiques à ceux de MySQL.
Restaurer PostgreSQL
Utilisez pg_restore
pour les archives au format personnalisé, en indiquant le socket :
# Lancez le terminal ServBay
pg_restore -h /Applications/ServBay/tmp -U votre_utilisateur -d votre_base -v /Applications/ServBay/backup/votre_base.dump
2
3
-h /Applications/ServBay/tmp
: socket PostgreSQL.-U votre_utilisateur
: utilisateur PostgreSQL.-d votre_base
: base de destination (à créer au préalable).-v
: mode verbeux./Applications/ServBay/backup/votre_base.dump
: fichier de sauvegarde.
Restaurer Redis
La restauration de Redis consiste simplement à placer le fichier dump.rdb
dans le dossier de données Redis.
Important : Assurez-vous que le service Redis est arrêté avant d'écraser ce fichier.
# Lancez le terminal ServBay
# Arrêtez le service Redis via ServBay
# Copiez le fichier de backup
cp /Applications/ServBay/backup/dump.rdb /Applications/ServBay/db/redis/dump.rdb
# Redémarrez le service Redis
2
3
4
5
/Applications/ServBay/backup/dump.rdb
: votre fichier de sauvegarde./Applications/ServBay/db/redis/dump.rdb
: chemin par défaut pour Redis.
Migrer une base de données
La migration consiste à transférer une base d’un environnement vers un autre (par exemple d’un autre ServBay, un serveur distant ou autre machine locale). Cela implique l’export des données depuis la source, puis l’import dans la cible.
Migrer MySQL
Migration de MySQL est une opération courante en développement.
Exporter la base depuis l’environnement source :
bash# Sur le terminal de la source mysqldump -u source_user -p votre_base > votre_base.sql
1
2source_user
: utilisateur source.votre_base
: base à migrer.votre_base.sql
: fichier exporté.
Transférer le fichier exporté dans l’environnement cible : Utilisez
scp
ou tout autre outil pour placervotre_base.sql
dans/Applications/ServBay/backup/
.Créer la base dans l’environnement ServBay cible :
bash# Sur le terminal ServBay cible mysql -u cible_user -p -e "CREATE DATABASE votre_base;"
1
2cible_user
: utilisateur ServBay cible.votre_base
: nom identique à la source recommandé.
Importer la base dans ServBay cible :
bash# Sur le terminal ServBay cible mysql -u cible_user -p votre_base < /chemin/vers/votre_base.sql
1
2/chemin/vers/votre_base.sql
: chemin du fichier dans l’environnement cible.
Migrer MariaDB
Migration de MariaDB suit exactement les mêmes étapes que MySQL, les outils et formats étant identiques.
- Exporter la base source :bash
mysqldump -u source_user -p votre_base > votre_base.sql
1 - Transférer le fichier SQL vers la cible.
- Créer la base dans la cible :bash
mysql -u cible_user -p -e "CREATE DATABASE votre_base;"
1 - Importer le fichier dans la nouvelle base :bash
mysql -u cible_user -p votre_base < /chemin/vers/votre_base.sql
1
Migrer PostgreSQL
Migration de PostgreSQL s’effectue avec pg_dump
et pg_restore
, en prêtant attention au chemin du socket.
Exporter la base de données depuis la source :
bash# Si la source est ServBay pg_dump -h /Applications/ServBay/tmp -U source_user -d votre_base -F c -b -v -f votre_base.dump # Sinon, adaptez les paramètres de connexion
1
2
3source_user
: utilisateur PostgreSQL sur la source.votre_base
: nom de la base à migrer.votre_base.dump
: nom du backup.
Transférer le fichier dump vers ServBay cible via
scp
ou autre.Créer la base sur la cible :
bash# Dans le terminal ServBay cible psql -h /Applications/ServBay/tmp -U cible_user -d postgres -c "CREATE DATABASE votre_base;"
1
2cible_user
: utilisateur sur la cible.votre_base
: base à créer.
Restaurer la base dans l’environnement cible :
bashpg_restore -h /Applications/ServBay/tmp -U cible_user -d votre_base -v /chemin/vers/votre_base.dump
1/chemin/vers/votre_base.dump
: chemin du backup sur la cible.
Migrer Redis
La migration Redis consiste généralement à copier directement le fichier dump.rdb
.
Récupérer le fichier
dump.rdb
de la source :bash# Sur la source # Arrêtez Redis ou attendez la fin de BGSAVE cp /chemin/source/redis/dump.rdb ./dump.rdb
1
2
3Transférer
dump.rdb
dans le dossier Redis de ServBay cible :bash# Depuis la source ou un intermédiaire scp ./dump.rdb cible_servbay:/Applications/ServBay/db/redis/dump.rdb
1
2cible_servbay
: adresse de la machine cible.- Important : Arrêtez Redis sur ServBay cible AVANT de copier le fichier !
Redémarrer Redis sur l’environnement cible : Au redémarrage, Redis chargera automatiquement le nouveau fichier
dump.rdb
.
Points d’attention
- Arrêter les services : Avant toute copie/directe des fichiers de données de bases (MySQL/MariaDB/PostgreSQL), arrêtez impérativement le service via le GUI ServBay ou la ligne de commande. Copier des fichiers de bases ouverts peut entraîner corruption ou incohérences. Il en va de même pour Redis lors d’une restauration de
dump.rdb
. - Droits d’accès : Vérifiez que l’utilisateur effectuant les opérations a les droits nécessaires sur les dossiers/fichiers.
- Chemins de fichiers : Vérifiez soigneusement le chemin d’installation de ServBay (
/Applications/ServBay
par défaut) et celui des fichiers de base pour la version concernée. - Utilisateurs et privilèges : Après migration, contrôlez ou ajustez les utilisateurs, droits et fichiers de configuration selon les besoins du nouvel environnement.
- Sauvegarde intégrée ServBay : ServBay offre également une solution de sauvegarde/restauration intégrée accessible en GUI — y compris réglages, sites, bases, et certificats SSL — qui peut compléter ou même remplacer la gestion manuelle.
Conclusion
Grâce à une structure de fichiers normalisée, ServBay offre aux développeurs une base solide pour la gestion des données de leurs bases. Ce guide détaille les chemins de stockage de MySQL, MariaDB, PostgreSQL et Redis, et fournit des procédures pratiques de sauvegarde, restauration et migration avec les utilitaires standards. Maîtriser ces techniques vous aidera à mieux administrer vos bases en développement local, à assurer la sécurité de vos données, et à migrer efficacement vos projets. Associée aux fonctions intégrées de ServBay, comme la sauvegarde automatique, cette méthodologie optimise la productivité et la gestion de vos données.