------------
Note importante par Keros :
La modification de la base de données de DomoticZ est risquée et peu entrainer des soucis.
Il est vivement recommandé de procéder à une sauvegarde complète de votre système afin de pouvoir revenir en arrière.
------------
Entre la version V3/V4 et la version 2020, la structure de la base de données (domoticz.db) a été modifiée.
Il y a :
- 2 tables qui ont été supprimées
- Quelques tables où les champs ont été déplacés
- Quelques tables où des champs ont été supprimés
- 1 table où un champ a été ajouté
- Des Index à supprimer et 4 autres, à ajouter (les Index permettent un accès optimisé à la DB).
PROCEDURE
******************************
1 - Sauvegarde de la base de données depuis le portail Domoticz
CONFIGURATION / PARAMETRES / SAUVEGARDE/RESTAURATION
2 - Arrêter le service Domoticz en ligne de commande avec puTTY
Code : Tout sélectionner
cd /home/pi/domoticz
sudo service domoticz.sh stop3 - Renommer le dossier domoticz en domoticz.V4.old, par exemple
Depuis puTTY
Code : Tout sélectionner
mv domoticz domoticz.v4.old4 - Installer la dernière version de Domoticz depuis puTTY
Mise à jour OS
Code : Tout sélectionner
sudo apt-get update
sudo apt-get upgradeCode : Tout sélectionner
cd ~/domoticz
http://releases.domoticz.com/releases/release/domoticz_linux_armv7l.tgz
tar xvfz domoticz_linux_armv7l.tgz
rm domoticz_linux_armv7l.tgz
cd ~/5 - Copier vos fichiers personnels (script, templates, images, icon..txt, ...) dans les dossiers respectifs
NOTA : Ne pas oublier de modifier les droits d'accès des fichiers 'Bash', 'Python' avec :
Code : Tout sélectionner
sudo chmod +x /home/pi/domoticz/scripts/....Code : Tout sélectionner
fromdos /home/pi/domoticz/scripts/....Code : Tout sélectionner
sudo reboot8 - Sauvegarde de la base de données vierge depuis le portail Domoticz
CONFIGURATION / PARAMETRES / SAUVEGARDE/RESTAURATION -> database 2020 vierge
9 - Sur votre PC, faire une copie de l'ancienne DB et la renommer 'domoticz vxx to v2020.db'
10 - Lancer une instance de SQLiteDatabaseBrowserPortable
11 - Ouvrir la base de données vierge : database 2020 vierge
12 - Lancer autre une instance de SQLiteDatabaseBrowserPortable
13 - Ouvrir la copie de la base de données de l'ancienne version 'domoticz vxx to v2020.db'
14 - Modifier la structure (replacer les champs, ajout ou suppression des champs, suppression et ajout d'index.
Une base de données, c'est comme un fichier Excel (je me servais souvent d'Excel comme DB pour mes applications industrielles permettant à toute personne néophyte, de modifier les données sans soft particulier) :
- les onglets d'Excel sont les Tables de la DB
- les colonnes d'Excel sont les champs de la DB
- les lignes d'Excel sont les enregistrements de la DB
- les liens d'Excel sont les Index de la DB
Votre base de référence est celle en version 2020.
Votre base à modifier est celle de l'ancienne version.
- Ouvrez la structure de chaque Table dans les 2 SQLiteDatabaseBrowser et comparez s'il y a du changement : manque de champ, format des champs, ajout de champs ou champ déplacé
- Pour modifier la structure d'une table, faire un clic droit sur la Table et choisir 'Modifier une table...'
- A l'affichage de la structure de la base, vous avez la possibilité de- supprimer un champ
- remonter un champ pour le replacer au bon endroit
- d'insérer un nouveau champ en renseignant : le Nom, le Type, la valeur par Défaut
Comparez la structure avec la version 2020 et SI TOUT EST IDENTIQUE, cliquer sur 'OK'
PS : lorsque le Type n'est pas dans la liste déroulante, faire un Copier/Coller avec la structure 2020
- Supprimer les Index qui serait en trop
- Ajouter les Index manquants en cliquant sur le Menu 'Editer / Créer un Index...', renseigner le Nom, la Table utilisée, les Colonne dans l'Index source 2020. BIEN VERIFIER l'exactitude de l'Index
- Supprimer le contenu de la Table 'sqlite_stat1' qui contient des enregistrements pointant sur des Index absents
- Sélectionnez l'onglet 'Parcourir les données'
- Sélectionnez la Table 'sqlite_stat1'
- cliquez sur la première ligne
- appuyer sur la touche SHIFT, maintenez cette touche et cliquez sur la dernière ligne
- Appuyer sur le bouton 'Supprimer l'enregistrement'
16 - Restaurer votre nouvelle DB depuis le portail Domoticz en version 2020.2
17 - Fermer la page Domoticz sur votre navigateur
18 - Rebooter votre Pi depuis puTTY
Code : Tout sélectionner
sudo reboot20 - Lancer Domoticz depuis votre navigateur et vous devriez récupérer tous vos équipements, données, ...
******************************
FIN DE PROCEDURE
******************************
Voilà, je pense que les explications sont assez complètes et détaillées pour que vous y arriviez