Sauvegarde base LibO Hsql pour la transporter sur un autre ordinateur

Bonjour,

Comme je n'ai rien vu de particulier (bien que ça me paraissait un peu louche) je pensais qu'il suffisait de transporter fichiers et profils d'un endroit à un autre pour récupérer les bases.

Ben non hélas. Ça aurait été plus simple avant que je ne fasse la connexion, mais bon.

Quelqu'un sait comment faire, merci ?

Bonjour

Ysabeau-2 wrote

Comme je n'ai rien vu de particulier (bien que ça me paraissait un peu
louche) je pensais qu'il suffisait de transporter fichiers et profils
d'un endroit à un autre pour récupérer les bases.

S'il s'agit bien de bases au format par défaut (Hsqldb) il suffit en effet
de copier les fichiers.
Les "référencements" (Outils> Options> LibreOffice Base > Base de données)
sont dans le fichier registrymodifications.xcu qui figure dans le profil.

Rien d'autre... donc il faudrait que tu précises ta question.

Cordialement
Pierre-Yves

Il s'agit de bases que j'ai passé en HSQLDB (jdbc) puisqu'il paraît que c'est mieux et là rien ne va plus du tout, je crois bien que j'ai *tout* perdu (reste dieux merci l'ordinateur d'origine qui fonctionne encore comme il peut), il ne veut absolument plus se connecter.

Et, évidemment, je n'arrive pas à trouver d'infos là-dessus, en français en tous cas (même dans la FAQ qui n'affiche que le titre du truc qui sera peut-être un jour traduit).

et, évidemment, j'ai remis le profil LibreOffice4 de l'ancien dans le nouvel ordinateur ! Pas le 3 par contre.

Suite...

Ysabeau-2 wrote

Il s'agit de bases que j'ai passé en HSQLDB (jdbc)

Désolé, je n'ai aucune expérience en ce domaine.

As-tu regardé du côté de la doc. Par exemple ?
http://hsqldb.org/doc/2.0/guide/management-chapt.html#mtc_backup

Cordialement
Pierre-Yves

Bonjour Ysabeau,

Il s'agit de bases que j'ai passé en HSQLDB (jdbc) puisqu'il paraît que
c'est mieux et là rien ne va plus du tout, je crois bien que j'ai *tout*
perdu (reste dieux merci l'ordinateur d'origine qui fonctionne encore
comme il peut), il ne veut absolument plus se connecter.

Des bases utilisant le moteur HSQLDB externe, c'est bien ça ?

Et, évidemment, je n'arrive pas à trouver d'infos là-dessus, en français
en tous cas (même dans la FAQ qui n'affiche que le titre du truc qui
sera peut-être un jour traduit).

Si c'est des bases externes, alors il doit y avoir qq infos dans mon
document "Pour en finir..."

Mais j'ai peut-être mal compris la question.

Bonjour Ysabeau,

Il s'agit de bases que j'ai passé en HSQLDB (jdbc) puisqu'il paraît que
c'est mieux et là rien ne va plus du tout, je crois bien que j'ai *tout*
perdu (reste dieux merci l'ordinateur d'origine qui fonctionne encore
comme il peut), il ne veut absolument plus se connecter.

Des bases utilisant le moteur HSQLDB externe, c'est bien ça ?

Oui.

Et, évidemment, je n'arrive pas à trouver d'infos là-dessus, en français
en tous cas (même dans la FAQ qui n'affiche que le titre du truc qui
sera peut-être un jour traduit).

Si c'est des bases externes, alors il doit y avoir qq infos dans mon
document "Pour en finir..."

Ben, il y a ceci : "Les données deviennent rapidement volumineuses et sont souvent de grande importance dans l’activité de leurs utilisateurs. Dans tous les cas, la sauvegarde régulière des bases de données est une nécessité (le mieux est de l’automatiser). "

cela : "Nous conseillons d’enregistrer ce fichier .odb dans le répertoire de la base elle-même. Nous optimiserons ainsi le système de sauvegarde qui sera mis en place ensuite, l’ensemble des fichiers constituant la base de données étant regroupés dans ce répertoire unique."

Ou ça : "Note
Les fichiers .script, .data et .log sont des composants critiques de nos bases de données HSQLDB. Ils doivent être sauvegardés très régulièrement.
Les fichiers .data (et .backup qui l’accompagne) n’existeront pas si nous utilisons la configuration par défaut de HSQLDB (tables en mémoire). Cependant, lors de notre migration depuis LibreOffice – qui utilise des tables « en cache » – nous trouverons ces deux types de fichiers. Si bien que, à moins de modifier un paramètre dans le fonctionnement de HSQLDB, ce dernier continuera de les créer."

Mais ça ne me dit pas comment sauvegarder et récupérer ! Ce d'autant plus que je n'ai pas rien dans data sur le vieil ordinateur et, évidemment pas de fichier backup. De toute façon, ça ne dit pas non plus comment récupérer le tout.

Mais j'ai peut-être mal compris la question.

Ou j'ai mal compris le document.

ce n'est pas en français ! Et ça semble tellement évident pour le type qui a pondu ça que je ne sais pas comment procéder.

Bref :frowning: avec Base on risque deux fois de perdre ses données si je comprends bien. Faudrait un module de sauvegarde. On ne peut même pas utiliser la solution facile de PhpMyAdmin.

En fait, quand on fait Enregistrer sous, LiBO génère un truc soit disant appelé base de données .odf qui est en fait en .odb, on récupère les formulaires, les "connexions" mais pas les tables. Donc question comment lui faire comprendre d'aller chercher les tables là où elles sont (au même endroit que dans l'autre ordinateur...) elles doivent être dans le dossier datas je présume.

Bravo les concepteurs de modules de bases de données en tous cas :frowning:

Bonsoir Ysabeau,

Mais ça ne me dit pas comment sauvegarder et récupérer ! Ce d'autant
plus que je n'ai pas rien dans data sur le vieil ordinateur et,
évidemment pas de fichier backup. De toute façon, ça ne dit pas non plus
comment récupérer le tout.

(les n°s de chapitre ci-dessous renvoient à mon document)

Sauvegarde :

1. Tu enregistres le contenu du répertoire où se trouve la BD (les
fichiers .script, .backup, .properties, .data, etc.) sur un support externe.

2. Tu enregistres ton fichier .odb associé qui contient les formulaires,
les requêtes, etc.

Restauration :

1. HSQLDB est "installé" sur ton nouveau poste (ch.3)

2.a tu remets le répertoire de la BD dans l'état où il se trouvait en y
re-inscrivant les fichiers sauvegardés

2.b tu restaures ton fichier .odb

3. Tu restitues les paramètres d'accès à la BD dans LibO (ch.4).

Tu devrais alors retrouver l'accès à ta BD.

Merci, je vais voir ce que ça donne (sauf que j'ai quand même un peu essayé de faire comme ça et il me semble que je ne pouvais pas le faire, mais passons).

Mais je ne comprends pas pourquoi alors qu'on en a plein la bouche des sauvegardes pour les bases de données, pourquoi les processus de sauvegarde et de restauration sont toujours aussi peu évidents et pourquoi il faut aller à la pêche pour les trouver (j'ai eu le même genre de problème avec Wordpress, depuis je sais faire ça avec PhpMyAdmin). Dans ton guide par exemple, le mot restauration ne figure pas, pas plus que restaurer. Ce genre de processus devrait avoir un chapitre à part détaillé.

Et devrait d'ailleurs cela figurer dans l'aide et la faq de Base, ce qui n'est, évidemment pas le cas partout ou alors c'est caché un peu avec surtout pas les mots qu'on emploie.

Dans ton guide par exemple, le mot restauration ne figure
pas, pas plus que restaurer. Ce genre de processus devrait avoir un
chapitre à part détaillé.

+1 :slight_smile:

(en cours, merci à la testeuse involontaire :wink:

Et devrait d'ailleurs cela figurer dans l'aide et la faq de Base, ce qui
n'est, évidemment pas le cas partout ou alors c'est caché un peu avec
surtout pas les mots qu'on emploie.

C'est sans doute que les utilisateurs de bases HSQLDB le font sous LibO
en mode incorporé, donc pas besoin de se compliquer la vie : le .odb et
hop ! En mode externe, ces utilisateurs sont une infime minorité
supposée savoir ce qu'elle fait. Indéniablement, ne s'attaque pas à de
la gestion de BD externe qui veut (HSQLDB ou PostGreSQL ou MySQL ou...).
Il y a là un saut qualitatif qui implique un investissement non
négligeable. Mais je suis d'accord sur le principe de communiquer sur
l'aspect sauvegarde et restauration.
Note : bientôt HSQLBD sera détrôné par Firebird... mais je gage qu'on
risque de retrouver les mêmes problèmes et questions.

Amicalement,

Bonsoir Ysabeau,

Dans ton guide par exemple, le mot restauration ne figure
pas, pas plus que restaurer. Ce genre de processus devrait avoir un
chapitre à part détaillé.

+1 :slight_smile:

(en cours, merci à la testeuse involontaire :wink:

Les différents endroits où se trouvent "des trucs" à sauvegarder
(éventuellement) :

1. Le répertoire de la BDD, œuf corse

2. Les paramètres de connexion au serveur HSQLDB externe

stockés dans le fichier javasettings_XXX.xml qui se trouve dans le
sous-répertoire /config du profil de l'utilisateur LibO.

XXX = soit "Windows" soit "Linux" selon le système d'exploitation (sous
OS X, ché pô).

3. Le fichier .odb associé

Il contient les paramètres d'accès à HSQLDB

4. Les paramètres d'enregistrement de la base dans LibO

mémorisés dans registrymodifications.xcu qui se trouve à la racine du
profil de l'utilisateur.
Pour les curieux : chercher une ligne qui contient
"/org.openoffice.Office.DataAccess/RegisteredNames"

Les points 2, 3 et 4 sont facultatifs car ils peuvent être reconstitués
manuellement a posteriori. C'est particulièrement le cas lorsque les
chemins d'accès changent ou que les versions de Java ou de HSQLDB sont
actualisées.

Pour retrouver les paramètres "à la main", faire, dans l'ordre :

point 2 : voir mon document, chapitre 4.1
point 3 : voir mon document, chapitre 4.2
point 4 : Outils > Options, LibreOffice Base > Bases de données

PS : une nouvelle version de mon document incluant ces informations est
sous presse :slight_smile:

Amicalement,

NON, le point 3 est obligatoire ! Le .odb peut contenir moult requêtes,
rapports ou formulaires... Pfff... j'écris trop vite.

Les différents endroits où se trouvent "des trucs" à sauvegarder
(éventuellement) :

1. Le répertoire de la BDD, œuf corse

Sauvegardé et remis sur le nouvel ordinateur.

2. Les paramètres de connexion au serveur HSQLDB externe

stockés dans le fichier javasettings_XXX.xml qui se trouve dans le
sous-répertoire /config du profil de l'utilisateur LibO.

XXX = soit "Windows" soit "Linux" selon le système d'exploitation (sous
OS X, ché pô).

Profil réintégré dans le nouvel ordinateur également...

Ces deux points sont très exactement les premiers que j'ai faits.

3. Le fichier .odb associé

Il contient les paramètres d'accès à HSQLDB

Oh ça, il y est le fichier odb, pas de problème, avec les paramètres mais sans les tables que cette saleté ne veut décidément pas trouver.

4. Les paramètres d'enregistrement de la base dans LibO

mémorisés dans registrymodifications.xcu qui se trouve à la racine du
profil de l'utilisateur.
Pour les curieux : chercher une ligne qui contient
"/org.openoffice.Office.DataAccess/RegisteredNames"

Là par contre pas fait.

Les points 2, 3 et 4 sont facultatifs car ils peuvent être reconstitués
manuellement a posteriori. C'est particulièrement le cas lorsque les
chemins d'accès changent ou que les versions de Java ou de HSQLDB sont
actualisées.

Pour retrouver les paramètres "à la main", faire, dans l'ordre :

point 2 : voir mon document, chapitre 4.1
point 3 : voir mon document, chapitre 4.2
point 4 : Outils > Options, LibreOffice Base > Bases de données

Je ne comprends pas comment c'est censé régler le problème désolée.Tout ça je l'ai fait, refait.
Moi ce que je vois c'est que si je remets le chemin dans les paramètres ce fichu truc ne trouve toujours pas les tables.
Je savais bien que j'avais essayé et que c'était foireux.

Ouais ben il trouve les formulaires et pas les données.
Je sens qu'il va me falloir bidouiller encore... c'est-à-dire tout mettre (les données) sur Calc et tout refaire à zéro formulaires compris refaire un formulaire pas trop moche ça prend un temps fou (les moches moins mais ça me rend malade).

Re,

2. Les paramètres de connexion au serveur HSQLDB externe

stockés dans le fichier javasettings_XXX.xml qui se trouve dans le
sous-répertoire /config du profil de l'utilisateur LibO.

XXX = soit "Windows" soit "Linux" selon le système d'exploitation (sous
OS X, ché pô).

Profil réintégré dans le nouvel ordinateur également...

As-tu modifié la version Java ou HSQLDB ?
As-tu modifié le répertoire d'installation de HSQLDB ?

Si oui à une seule des deux questions : réviser les points 4.1 et 4.2 de
ma doc.

3. Le fichier .odb associé

Il contient les paramètres d'accès à HSQLDB

Oh ça, il y est le fichier odb, pas de problème, avec les paramètres
mais sans les tables que cette saleté ne veut décidément pas trouver.

En ouvrant le .odb, les tables sont bien accessibles ?

Si elles ne le sont pas : dans le module Base, menu Édition > Base de
données > Propriétés, où tu vérifies/corriges le nom du répertoire où se
trouve la BDD.

4. Les paramètres d'enregistrement de la base dans LibO

mémorisés dans registrymodifications.xcu qui se trouve à la racine du
profil de l'utilisateur.
Pour les curieux : chercher une ligne qui contient
"/org.openoffice.Office.DataAccess/RegisteredNames"

Là par contre pas fait.

Pas grave : tu vas dans les options et tu l'ajoutes. C'est là que ça foire ?

Moi ce que je vois c'est que si je remets le chemin dans les paramètres
ce fichu truc ne trouve toujours pas les tables.
Je savais bien que j'avais essayé et que c'était foireux.

/o\ Je viens de tester (sous WinXP et LibO 4.1.4) sans pb...

A+

Bon, on sort du mode panique et on reprend méthodiquement... Voir mon
autre msg :slight_smile:

Bon finalement, j'y suis arrivée, merci. Pourtant j'ai dû vérifier dix mille fois les adresses (mais apparemment que par morceaux).

Donc je résume :

- transfert du profil LibO et du dossier où se trouvent la (ou les) bases sur le nouvel ordinateur
- installation de HSQLDB sur le nouvel ordinateur
- dans Outils/Options/Avancé de LibreOffice, repamarétrer les chemins vers HSQLDB (le faire d'office, surtout qu'un changement d'ordinateur ça change pas mal de choses)
- ouvrir la base, on n'a que les formulaires, clic droit sur le panneau contenant la liste des formulaires (ou Édition) Base de données/Propriétés et redonner l'adresse en vérifiant tout.

Note : en regardant en bas de l'écran d'accueil de Base, on a "l'adresse de liaison", on peut mieux voir par là là où ça coince.

Bonsoir Ysabeau,

heureux que tu retrouves tes "petits".

Bon finalement, j'y suis arrivée, merci. Pourtant j'ai dû vérifier dix
mille fois les adresses (mais apparemment que par morceaux).

je ne doutais pas que tu y arriverais :slight_smile:

Donc je résume :

- transfert du profil LibO et du dossier où se trouvent la (ou les)
bases sur le nouvel ordinateur
- installation de HSQLDB sur le nouvel ordinateur
- dans Outils/Options/Avancé de LibreOffice, repamarétrer les chemins
vers HSQLDB (le faire d'office, surtout qu'un changement d'ordinateur ça
change pas mal de choses)

oui. La recopie du fichier javasettings ne peut se faire que pour une
restauration 100% identique.

- ouvrir la base, on n'a que les formulaires, clic droit sur le panneau
contenant la liste des formulaires (ou Édition) Base de
données/Propriétés et redonner l'adresse en vérifiant tout.

Note : en regardant en bas de l'écran d'accueil de Base, on a "l'adresse
de liaison", on peut mieux voir par là là où ça coince.

Merci pour ces commentaires qui rejoignent mes mises à jour en cours sur
le document.

Amicalement,