Migrer mon Dolibarr vers une offre Cloud
J'utilise Dolibarr sur un autre serveur. Comment puis-je migrer vers une offre SaaS (comme DoliCloud, NovaFirstCloud, iNodbox Cloud, DoliAsso ou tout Hébergement de Dolibarr dans le Cloud) ?
Cette page explique comment déplacer une instance existante de Dolibarr ERP & CRM vers un service d'hébergement Web à distance dans le Cloud. Ce tutoriel devrait fonctionner pour chaque installation Dolibarr utilisant une base de données MySql. L'exemple est basé sur une migration vers DoliCloud (mais fonctionne aussi vers NovaFirstCloud, iNodbox Cloud ou autre). Vous devriez être en mesure de remplacer toutes les choses spécifiques au fournisseur SaaS pris en exemple par n'importe quel autre fournisseur SaaS de Dolibarr).
Vous pouvez exécuter le processus de migration vous-même en suivant ce tutoriel. Toutefois, si vous avez besoin de plus d'aide, vous pouvez poser vos questions par email au support de l'hébergement choisi (par exemple à support@dolicloud.com pour DoliCloud, ou support@inodbox.com pour iNodbox Cloud)
Pré-requis
- Vérifier la version de votre Dolibarr (vous la trouverez sur la page de login) par rapport à la version proposée en SaaS.
Si votre version locale est plus ancienne, vous pouvez réaliser une mise à jour localement mais ce n'est pas obligatoire, la mise à jour pourra aussi se faire après migration (c'est même moins risqué de le faire après bascule qu'avant car votre hébergeur Cloud pourra alors intervenir en cas de problème).
Si votre version locale est plus récente, et uniquement dans ce cas, demandez à l'hébergeur de votre nouvelle instance Dolibarr si il peut mettre la même version que la votre, ou une version supérieure avant de dérouler la migration.
Etape 1 - Sauvegarder votre ancienne base de donnée
La première étape est de sauvegarder la base de donnée que vous voulez basculer dans le SaaS/Cloud.
Pour cela, aller dans le menu Accueil - Outils systèmes - Sauvegardes. Cliquer sur Générer sauvegarde de l'étape 1 (avec la méthode mysqldump de préférence si plusieurs méthodes sont proposées). Ceci lancera la commande de sauvegarde et affichera le fichier de sauvegarde généré, qu'il sera possible de télécharger en cliquant dessus.
En cas de page blanche apparaissant durant cette étape (souvent du à un manque de mémoire), vous pouvez afficher les options avancées et choisir l'option "Export faible mémoire" pou réussir à passer cette étape avec succès.
En cas d'autre erreur, essayez avec la méthode phpmyadmin.
Alternative si vous avez des connaissances techniques:
- Si vous rencontrez des problèmes avec cette phase (par exemple à cause de votre hébergeur qui bride votre hébergement ne permettant pas l'exécution de la commande mysqldump), si vous avez des connaissances en lignes de commandes, vous pouvez aussi lancer la commande de sauvegarde manuellement depuis n'importe quel autre ordinateur équipé du logiciel MySql installé. Pour cela, il faut lancer la commande suivante:
mysqldump -h ip_ancien_serveur_mysql_a_sauvegarder -P port_ancien_serveur_mysql -u utilisateur_base -pmot_de_passe_base > mysqldump_YYYYMMDDHHMMSS.sql
- Ouvrez le fichier dump/sauvegarde généré (son nom est du genre mysqldump_A.B.C_YYYYMMDDHHMMSS.sql) pour voir si ce fichier est bien complet: Le fichier doit se terminer par une ligne du genre
-- Dump completed on YYYY-MM-DD HH:mm:ss
Si oui, enregistrez ce fichier en lieu sur. Il sera requis à l'étape 5.
Etape 2 - Sauvegarder le contenu de votre répertoire documents
Tous les fichiers envoyés ou générés sur Dolibarr de votre ancienne instance sont stockés dans un répertoire nommé en général documents ou dolibarr_documents. Nous allons voir ici comment sauvegarder ce répertoire...
Pour savoir quel est le nom complet exact de ce répertoire pour votre cas, aller sur l'instance à sauvegarder, dans le menu Accueil - Infos Systèmes - Dolibarr - Tous les paramètres (très vieilles versions) ou Accueil - Outils d'administrations - Infos Dolibarr - Paramètres Fichier de configuration (versions plus récentes). Le chemin complet où sont stockés vos fichiers est visible sur la ligne du paramètre dolibarr_main_data_root.
Sauvegarde un répertoire documents depuis Dolibarr
Certaines versions récentes de Dolibarr ont une fonctionnalité qui permet de générer ce fichier zip. Vous pouvez donc essayer d'aller dans le menu Accueil - Outils systèmes - Sauvegardes et si une étape 2 existe sur cette page, cliquez sur le bouton Générer Sauvegarde au niveau de cette 2eme étape. Si votre serveur possède assez de mémoire, et moyennant une attente qui peut durer plusieurs minutes, vous obtiendrez le fichier zip prêt à être téléchargé. Fin de cette étape.
En cas de manque de mémoire ou de bridage de votre hébergement, il vous faut utiliser la méthode manuelle du chapitre ci-dessous pour générer le fichier archive zip de votre répertoire documents.
ou Sauvegarde du répertoire documents manuellement
Sauvez ce répertoire et tout son contenu (sous-répertoires et fichiers), en réalisant un fichier zip du répertoire avec ses sous-répertoires, ou en recopiant toute l'arborescence sur un autre emplacement du disque dur pour en faire une archive zip ou sur un espace partagé en ligne (de type Drive, DropBox, ...). Remarque: Parfois, des fichiers dolibarr.log ou dolibarr_*.log se trouvent à la racine de ce répertoire, vous pouvez les supprimer avant de faire votre archive zip pour réduire sa taille si nécessaire.
Etape 3 - Créer une instance d'accueil dans le Cloud
Si vous n'avez pas encore votre propre instance, inscrivez-vous pour créer votre instance privée dans le Cloud.
- Pour DoliCloud, cela se fait depuis la page https://myaccount.dolicloud.com/register.php.
- Pour NovaFirstCloud, cela se fait depuis la page https://myaccount.novafirstcloud.com/register.php.
- Pour iNodbox Cloud, cela se fait depuis la page https://myaccount.dolibox.cloud/register.php.
Notez que la création d'une instance est gratuite (pour 15 jours en général mais cela dépend de votre fournisseur de Cloud) mais vous pouvez demander une prolongation si vous avez besoin de plus de temps pour tester votre migration ou pour prendre plus de temps à vous décider à complètement basculer.
Etape 4 - Recopier vos documents sur votre instance Cloud
Si vous n'avez pas de connaissances techniques dans l'utilisation d'un logiciel sFTP
Envoyez simplement le fichier généré à l'étape 2 par mail (à support@dolicloud.com pour DoliCloud ou à support@novafirstcloud.com pour NovaFirstcloud ou à support@inodbox.com pour iNodbox Cloud). Si il est trop gros, mettez le à disposition via un système comme Google Drive, DropBox ou Smash ou WeTransfer). Indiquer dans le message du mail "Pour migration dans ma nouvelle instance Cloud nommée xxxxx" (remplacer xxxxx par le nom/url de votre instance créée à l'étape 3).
Un technicien écrasera votre répertoire documents de votre nouvelle instance Cloud vierge avec ces fichiers de votre ancienne installation, et vous répondra par mail une fois l'opération faite (ce type de demande n'étant pas prioritaire et souvent traité de manière hebdomadaire, le délai de traitement peut varier entre 1 et 6 jours selon l'hébergeur d'accueil).
Si vous avez des connaissances dans l'utilisation de logiciel sFTP ou SSH
Vous pouvez réaliser cette étape vous-même en suivant la procédure suivante pour remplacer les fichiers documents de votre instance DoliCloud (ou NovaFirstCloud, ou iNodbox Cloud) par ceux de votre ancienne installation:
Une fois l'instance Cloud créée, vous avez du recevoir un mail avec les identifiants pour vos logguer à votre Dolibarr ainsi qu'à votre panneau de contrôle client.
- D'abord, connectez-vous sur votre nouvelle instance Dolibarr chez votre prestataire (le login est souvent "admin" par défaut). Aller dans le menu Accueil - Infos systèmes - Dolibarr - Tous les paramètres. Vous trouverez sur la ligne commençant par dolibarr_main_data_root, le chemin complet du répertoire ou sont stockés les documents de votre nouvelle instance chez votre prestataire.
- Ensuite, loguez-vous sur votre panneau de contrôle client (https://myaccount.dolicloud.com pour DoliCloud, https://myaccount.novafirstcoud.com pour NovaFirstCloud, https://myaccount.dolibox.cloud pour iNodbox Cloud, le login est votre email d'inscription). Vous y trouverez vos identifiants d'accès SFTP. Si ces derniers ne sont pas visibles, il vous faut alors vous rabattre sur la première méthode.
- Avec un logiciel sFTP (Exemple WinSCP ou FileZilla pour Windows, Nautilus pour la plupart des Linux), loguez-vous sur le serveur de votre instance via le protocole SFTP et ces identifiants. Copiez tous les fichiers et sous-répertoires documents que vous avez sauvegardés, vers le répertoire documents de votre instance Cloud (Note: Un tutoriel plus complet pour se connecter par SFTP et transférer des fichiers avec DoliCloud peut être trouvé ici: https://www.dolicloud.com/fr/fr-faq-how-to-setup-my-sftp.php). Vous pouvez aussi préférer transférer les fichiers par un zip et le dézipper dans le répertoire voulu via un accès terminal SSH.
Etape 5 - Recharger votre ancienne base de donnée sur votre instance Cloud
Si vous n'avez pas de connaissances techniques dans le logiciel de gestion de base de donnée Mysql ou MariaDB
Envoyez simplement le fichier généré à l'étape 1, ou un lien pour y accéder, depuis votre espace support ou par email (à support@dolicloud.com pour DoliCloud, à support@novafirstcloud.com pour NovaFirstCloud ou à support@inodbox.com pour iNodbox Cloud) en indiquant dans le message:
"Pour migration dans ma nouvelle instance dont l'url est __a_completer__".
Un technicien écrasera votre nouvelle base de données vierge de votre prestataire avec les données de votre ancienne installation, et vous répondra par mail une fois l'opération faite (ce type de demande n'étant pas prioritaire et souvent traité de manière hebdomadaire, le délai de traitement peut varier entre 1 et 6 jours selon l'hébergeur d'accueil).
Remarque: si vous comptiez aussi envoyer votre fichier de documents de l'étape 4 par email, vous pouvez regrouper le fichier de l'étape 4 et 5 dans le même mail...
Si vous avez des connaissances dans le logiciel de gestion de base de donnée Mysql ou MariaDB
Vous pouvez suivre la procédure suivante pour remplacer la base de donnée de votre instance dans le Cloud par celle de votre ancienne installation.
- Loguez-vous à votre panneau de contrôle client à nouveau. Vous trouverez un espace donnant vos identifiants MySql ou MariaDB.
Aller sur n'importe quel ordinateur sur lequel MySql a été installé (votre PC local peut faire l'affaire si MySql ou MariaDB a été installé). Lancer la commande suivante pour sauvegarder votre base de donnée Cloud telle qu'elle est actuellement, avant l'import de vos anciennes données (au cas où, pour la restaurer plus tard si nécessaire).
mysqldump -h yourinstance.with.dolicloud.com -P 3306 -u doliclouduser -pdolicloudpassword doliclouddatabase > dolicloud.YYYYMMDD.sql
avec toutes les informations yourinstance.with.dolicloud.com, doliclouduser, dolicloudpassword et doliclouddatabase qui sont les identifiants Mysql trouvés sur votre espace client.
- Lancez la commande suivante pour remplacer les données de votre base dans le Cloud avec les données de votre ancienne base.
mysql -h yourinstance.with.dolicloud.com -P 3306 -D doliclouddatabase -u doliclouduser -pdolicloudpassword < monancienserveurdump.YYYYMMDD.sql
Remarque: Si vous obtenez une erreur de type "ERROR 1005 (HY000) at line 25: Can't create table `...`.`llx_accounting_account` (errno: 150 "Foreign key constraint is incorrectly formed")", alors effacez les 4 tables suivantes, si elles existent, manuellement: llx_accounting_account, llx_accounting_system, llx_accountingaccount, llx_accountingsystem. Puis retentez la commande de chargement.
Remarque: Si vous obtenez une erreur de type "ERROR 1064 (42000) at line 18: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'TYPE=InnoDb...' at line ...", remplacez alors les chaines "TYPE=InnoDb" par "ENGINE=InnoDb" dans le fichier dump. Puis retentez la commande de chargement.
Si vous obtenez un autre erreur, basculer sur la méthode précédente.
Tester
Une fois les étapes de restauration de vos données dans votre instance Cloud réalisée (les étapes précédentes donc), appelez la page de login de votre Dolibarr de votre nouvelle instance Cloud.
Si votre ancienne version de Dolibarr était plus ancienne que la version de votre nouvel hébergeur Cloud, vous devriez avoir un message vous invitant à lancer le processus de migration de données. Choisissez simplement le choix proposé recommandé par l'assistant. Si vous recevez un message disant que le processus de mise à jour est "vérrouillé" par le fichier install.lock, lancez à nouveau votre client SFTP et supprimer le fichier documents/install.lock.
Une fois la mise à jour réalisée, ou si votre version était la même que celle de votre nouvel hébergeur Cloud, vous arrivez sur la page de login et vous pouvez vous connecter à votre Dolibarr en utilisant n'importe quel utilisateur qui existait dans votre ancienne installation, avec le même mot de passe qu'anciennement. Notez que votre login/mot de passe admin qui avait été fourni lors de la génération de votre instance chez votre nouvel hébergeur Cloud n'existe plus car il a été écrasé par le chargement de votre ancienne base de donnée à l'étape précédente. Ce sont donc vos anciens comptes qui sont maintenant à utiliser pour accéder à l'application.
Si vous aviez des modules externes activés sur votre ancienne instance, il vous faudra aussi les redéployer sur la nouvelle instance (depuis le menu Accueil - Configuration - Modules - Déployer module externe).
Votre instance privée est en ligne et opérationnelle pour un usage en production, avec toutes vos données et configurations retrouvées.
Vous recevrez un mail peu avant la fin de la période de test pour savoir si vous désirez continuer sur une offre payante (il suffit de ne pas y répondre si vous n'êtes pas intéressé, la désinstallation et suppression des données se fera alors automatiquement quelques jours après la fin de l'échéance)...