Restaurer la bdd

Recoupe toutes les discussions à propos de Noalyss
Répondre
Skipper
Messages : 54
Enregistré le : mar. nov. 14, 2017 10:35 pm

Restaurer la bdd

Message par Skipper » mar. nov. 14, 2017 10:35 pm

Bonjour !

Après avoir changé mon serveur, j\'ai réinstallé phpcompta. Restaurer les bdd éxistantes se prouve difficile.

J\'ai utilisé pg_dump dans un cron pour faire les sauve-gardes.

n° 1 : Administration -> Restaure
Restauration réussie, mais :

Code : Tout sélectionner

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation 
\"version\" does not exist in /var/www/phpcompta/include/postgres.php on line 139

select val from version

Warning: pg_fetch_array() expects parameter 1 to be resource, boolean given in /var/www
/phpcompta/include/postgres.php on line 458


Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation \"version\" does 
not exist in /var/www/phpcompta/include/postgres.php on line 139
select val from version
Warning: pg_fetch_array() expects parameter 1 to be resource, boolean given in /var/www
/phpcompta/include/postgres.php on line 458
# Patching dossier14 from the version to 5
ERROR : comment on table action is \'The different privileges\' 
n° 2 : Selection du dossier
Quelques Warnings et un Fatal Error.

Code : Tout sélectionner

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation 
\"version\" does not exist in /var/www/phpcompta/include/postgres.php on line 139

select val from version
Warning: pg_numrows(): supplied argument is not a valid PostgreSQL result resource in 
/var/www/phpcompta/include/postgres.php on line 427


Votre base de données n\'est pas à jour, cliquez ici pour appliquer le patch

Code : Tout sélectionner

Warning: pg_query_params() [function.pg-query-params]: Query failed: ERROR: 
relation \"todo_list\" does not exist in /var/www/phpcompta/include/postgres.php on line 167


Fatal error: Uncaught exception \'Exception\' with message \' SQL ERROR select tl_id, 
tl_title,tl_desc,to_char( tl_date,\'DD.MM.YYYY\') as tl_date from todo_list where 
use_login=$1 order by tl_date descarray array ( 0 => \'phpcompta\', )\' in /var/www
/phpcompta/include/postgres.php:171 Stack trace: #0 /var/www/phpcompta/include
/class_todo_list.php(143): ExecSqlParam(Resource id #29, \'select tl_id, t...\', Array) 
#1 /var/www/phpcompta/html/access.php(69): Todo_List->load_all() #2 {main} thrown in 
/var/www/phpcompta/include/postgres.php on line 171
n° 3 : Setup / Update

Code : Tout sélectionner

Patching 13 bb2009

      Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation \"version\" 
does not exist in /var/www/phpcompta/include/postgres.php on line 139

      select val from version
      Warning: pg_fetch_array() expects parameter 1 to be resource, boolean given in 
/var/www/phpcompta/include/postgres.php on line 458


      Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation \"version\" 
does not exist in /var/www/phpcompta/include/postgres.php on line 139

      select val from version
      Warning: pg_fetch_array() expects parameter 1 to be resource, boolean given in 
/var/www/phpcompta/include/postgres.php on line 458

    * Patching 13 bb2009 from the version to 5
      ERROR : comment on table action is \'The different privileges\' 
Quoi faire ?

Merci !
Skipper

Dany
Messages : 2181
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Dany » mar. nov. 14, 2017 10:35 pm

Bonjour,

Tu utilises Windows ou Linux ???

@+,

.D.

Dany
Messages : 2181
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Dany » mar. nov. 14, 2017 10:35 pm

Au fait, avec tout le code, l\'affichage devient illisible, tu pourrais faire attention ? C\'est assez difficile de tout lire ainsi

Ce coup ci, je vais corriger les lignes trop longues ;-)

Merci

D.

Skipper
Messages : 54
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Skipper » mar. nov. 14, 2017 10:35 pm

C\'est du Linux 2.6.28, Postgres 8.3, PHP 5.2.6, Apache 2.2.11. Un Ubuntu si ca change quelque chose. Avant c\'était un Gentoo.

Merci !

Dany
Messages : 2181
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Dany » mar. nov. 14, 2017 10:35 pm

Oui je n\'avais pas réalisé, crontab, c\'est forcément un unix :-)
Bon, en fait, le problème vient de la façon dont tu as fait ton backup, quelle option as-tu utilisée ?
ici le code pour le backup http://www.phpcompta.be/doc/backup_8php-source.html

Skipper
Messages : 54
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Skipper » mar. nov. 14, 2017 10:35 pm

Bon, la seule difference est que tu utilises -Fc, pour custom format, et moi, j\'ai utilisé le format standard.

En plus, je ne suis pas certain d\'avoir utilisé Postgres 8.3 sous Gentoo, il est possible que j\'étais déjà sous Postgres 8.4

Sauf si tu as encore des idées, j\'imagine que c\'est à refaire. Two years down the drain, ouch!

Dany
Messages : 2181
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Dany » mar. nov. 14, 2017 10:35 pm

Facile ;=)

Tu crées une base de données, qu\'importe le nom, puis tu la retrouves grâce à son id (premier col dans l\'écran de login)

En tant que superuser postgres, tu la droppes et tu la recréés avec le même nom, puis tu restaure ton backup dedans ;-) voir pg_restore et ici

http://www.phpcompta.eu/doc/restore_8in ... ource.html

Dany
Messages : 2181
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Dany » mar. nov. 14, 2017 10:35 pm

PS fait attention aux permissions

Skipper
Messages : 54
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Skipper » mar. nov. 14, 2017 10:35 pm

Formidable !!!

Ce n\'était pas à 100% comme tu l\'avais décrit, mais assez près pour que j\'aie pu trouver mon chemin. La dérogation était qu\'un pg_dump \"classique\" ne peut pas être restaurer avec pg_restore. Un pg_dump \"classique\" est un fichier SQL qui doit être traiter par psql, donc la solution était : psql -U phpcompta -d dossier19 -f /tmp/2010.sql. Va falloir encore que je vérifie, mais je pense que c\'est résolu.

Mille grazie, Dany ! Mucho apprécié !!!

Thanks encore,
Skipper

Dany
Messages : 2181
Enregistré le : mar. nov. 14, 2017 10:35 pm

Re:Restaurer la bdd

Message par Dany » mar. nov. 14, 2017 10:35 pm

Tant mieux :-) Au fait, tous les fichiers générés sont stockés dans la base de données, donc il ne faut pas se contenter d\'un pg_dump \"classique\" ;-)
Le mieux est de changer dans ton crontab

Code : Tout sélectionner

i=base de données
pg_dump -f $DEST_DIR/$i.dmp -Fc -Z5 -b $i

Répondre