Annonce

Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Whiler
2013-11-05 17:16:56

Salut,

Juste pour vous dire que j'ai fini de déplacer mes 663 Albums contenant 18760 photos...
Je suis passé d'une grosse trentaine de sites distants à un seul site local.

Afin de documenter un peu plus cette étape, je vais expliquer comment j'ai fait (de façon simplifier)...

Cette méthode ne peut s'appliquer que si l'on n'a pas trop d'albums et que les albums physiques ne sont pas directement utilisés, mais servent simplement de conteneurs pour des albums virtuels...

Comme précisé dans des messages précédents, je souhaitais profiter du déplacement pour agréger et modifier des répertoires de stockages...

Pour chaque répertoire contenant des images, j'uploadais celui-ci et seulement celui-ci (plus facile de retrouver son identifiant ainsi, surtout en cas d'homonymie)...

Je commence par rechercher l'identifiant du site distant :

Code:

SELECT *
FROM `piwigo_sites`
WHERE `galleries_url` LIKE '[i]REMOTE_SITE_URL[/i]%';

Puis je recherche l'identifiant du répertoire pour le site distant :

Code:

SELECT *
FROM `piwigo_categories`
WHERE `dir` LIKE '[i]PREVIOUS_FOLDER-NAME[/i]'
AND   `site_id` = [i]REMOTE_SITE_ID[/i];

Après j'uploade le répertoire à son nouvel emplacement local et je synchronise les répertoires uniquement de ma galerie locale... il trouve le nouveau répertoire (et ses parents)...

J'effectue une requête sur la base de données pour trouver l'identifiant de mon nouveau répertoire/album :

Code:

SELECT *
FROM `piwigo_categories`
WHERE `dir` LIKE '[i]NEW_FOLDER-NAME[/i]'
AND   `site_id` = 1;

Ensuite, la partie critique arrive avec les mises à jour :

Code:

UPDATE .`piwigo_images`
SET    `storage_category_id` = [i]NEW_CATEGORY_ID[/i],
       `path`                = REPLACE(`path`, [i]PREVIOUS_PATH[/i], [i]NEW_PATH[/i])
WHERE  `storage_category_id` = [i]PREVIOUS_CATEGORY_ID[/i];

UPDATE .`piwigo_image_category`
SET    `category_id` = [i]NEW_CATEGORY_ID[/i]
WHERE  `category_id` = [i]PREVIOUS_CATEGORY_ID[/i];

Je réitère l'opération pour les différents répertoires/albums/catégories...

De temps en temps, j'effectue des opérations de maintenance :
- Mettre à jour les informations des albums
- Mettre à jour les informations des photos
- Réparer et optimiser la base de données

Lorsque j'ai terminé avec un site distant, que celui-ci m'affiche 0 photos, je le supprime des sites distants, puis j'effectue une simulation de synchronisation sur les fichiers et répertoires en affichant un maximum d'informations... Si je me suis trompé dans un identifiant, en général, ya plein de rouge qui apparait ;o)

Voila... c'était fastidieux, mais cela a répondu à mon besoin... maintenant, un de ces 4, je verrai pour passer sur une version supérieure à la 2.3.5... (en backupant avant, bien sûr ;o))

++

  W.

Whiler
2013-11-04 11:42:27

rio a écrit:

Le mieux, c'est qu'à la fin, tu te fasses valider ta procédure par quelqu'un de l'équipe.

C'est le principe de mes messages ;o))



flop25 a écrit:

Vous voullez faire du rangement physique ? Honnêtement l'esprit actuel de Piwigo est plus de tout virtualiser notamment via le plugin Virtualize : les images seront alors dans /upload classé et renomés

J'vais regarder ce dont vous parlez... ça fait longtemps que j'ai décroché puisque je ne pouvais plus migrer jusqu'à maintenant (enfin.. jusqu'au jour où je n'aurai plus de sites distants...)

flop25
2013-11-04 11:23:52

rio a écrit:

Il doit y avoir de la doc sur le WIKI sur le déplacement d'un site d'une une racine à une autre ou vers un autre hébergeur mais c'est pareille normalement

en fait c'est ce dont je me suis inspiré :)

rio
2013-11-04 11:14:51

Whiler a écrit:

Bonjour,

Merci pour les conseils complémentaires ;o)

Concrètement, les mises à jour des infos des albums et photos, ça fait quoi ? je ne risque pas d'écraser des métadonnées de mes photos en l'exécutant ?

Cordialement,

  W.

On va attendre des infos plus fraiches :-))
Mais si mes souvenirs sont bons, on modifie les infos dans piwigo_sites et les outils de maintenances s'occupent du reste (c'est à dire de rétablir les liens)
Il doit y avoir de la doc sur le WIKI sur le déplacement d'un site d'une une racine à une autre ou vers un autre hébergeur mais c'est pareille normalement.

Le mieux, c'est qu'à la fin, tu te fasses valider ta procédure par quelqu'un de l'équipe.

flop25
2013-11-04 11:10:49

oui c'était bien
UPDATE piwigo_categories
  SET site_id= REPLACE(site_id, 'X', 'Y')
;

Je ne sais pas combien vous avez d'images et d'albums mais vous risquez de perdre énormément de temps à changer les id et surtout faire des erreurs !
Moi ce que je vous proposais c'est de déplacer votre structure dossiers distantes dans /galleries (où ailleurs avec des symlink), en gardant votre organisation :  albums virtuels pour la présentation, et dossiers en albums physiques privés -comme j'imagine que c'est le cas actuellement- juste pour allimenter les albums virtuels en images

Vous voullez faire du rangement physique ? Honnêtement l'esprit actuel de Piwigo est plus de tout virtualiser notamment via le plugin Virtualize : les images seront alors dans /upload classé et renomés

rio
2013-11-04 11:08:17

rio a écrit:

Bonjour,

Ne pas oublier de passer la galerie en maintenance en la verrouillant pendant les opérations.
Des petits coups de  "Mettre à jour les informations des catégories" et " Mettre à jour les informations des images" pour permettre de mettre à jour les informations concernant les chemins (entre autres).
Attendre quelques jours avant de supprimer physiquement les sites distants.

:-)

Par ailleurs ce n'est pas au niveau de piwigo_sites qu'il faut bricoler?
(rappelez vous que je suis un chuia rouiller, les infos que je donne pourrait être obsolètes :-))

Whiler
2013-11-04 11:08:00

Bonjour,

Merci pour les conseils complémentaires ;o)

Concrètement, les mises à jour des infos des albums et photos, ça fait quoi ? je ne risque pas d'écraser des métadonnées de mes photos en l'exécutant ?

Cordialement,

  W.

rio
2013-11-04 11:02:21

Bonjour,

Ne pas oublier de passer la galerie en maintenance en la verrouillant pendant les opérations.
Des petits coups de  "Mettre à jour les informations des catégories" et " Mettre à jour les informations des images" pour permettre de mettre à jour les informations concernant les chemins (entre autres).
Attendre quelques jours avant de supprimer physiquement les sites distants.

:-)

Whiler
2013-11-04 10:59:38

Bonjour,

La sauvegarde de la base de données est effectuée (en triple, on ne sait jamais :D).

Pour la seconde requête, on est d'accord...

Pour la première, par contre... je pense que vous parlez de la table piwigo_categories...

Or puisque je n'utilise que des catégories virtuelles, je pensais ne modifier uniquement que la table images avec une mise à jour sur storage_category_id et path...

Mais je constate que ma méthode ne peut pas fonctionner sans faire également une mise à jour de la table piwigo_image_category...

Ce qui m'ennuie avec votre méthode, c'est que l'arborescence des fichiers doit rester similaire... puisque chaque ligne de la table piwigo_categorie contient les uppercats que vous ne mettez pas à jour... (et je souhaiterais en profiter pour faire un peu de rangement physique : j'ai plus d'une trentaine de sites distants déclarés !!! qui sont mixés dans des catégories virtuelles pour l'affichage)

Donc là, je pense modifier :
- piwigo_images : storage_category_id et path
- piwigo_image_category : category_id

Cela vous semble cohérent ou je m'apprête à tout casser ? N'hésitez pas à me dire si j'écris des erreurs...

Cordialement,

  W.

flop25
2013-11-04 10:03:07

Bonjour
ok j'ai compris, et je vous préviens vous êtes le premier

Va falloir déjà déplacer vos dossiers/fichiers dans ./galleries
Dans la base de donnée, allez dans piwigo_sites et relevez l'id de la galerie distante (X) et celui de ./galleries (Y normalement 1)
Ensuite il va faloir mettre à jour piwigo_images et piwigo_categories :

UPDATE piwigo_images
  SET site_id= REPLACE(site_id, 'X', 'Y')
;


UPDATE piwigo_images
  SET path = REPLACE(path, 'http://galerie2.com/galleries', './galleries')
;

et ça devrait aller... faites bien des sauvegarde de la base de données et des fichiers avant !

Whiler
2013-11-04 09:45:37

Bonjour,

En fait, je veux migrer mes galeries distantes sur le serveur local qui héberge piwigo... afin de pouvoir bénéficier, entre autres, des dernières mises à jour de piwigo... tout en conservant mes différents paramétrages/métadonnées (droits d'accès, date d'ajout, coordonnées gps, ...)...

Si je ne modifie pas d'id, etc, et que je me contente d'ajouter les photos déplacées et de supprimer les photos distantes, je vais perdre tous les paramétrages/métadonnées de ces photos... ce qui est bien évidemment hors de question...

Lorsque je parle des albums virtuels, c'est afin d'expliquer que d'après ce que j'ai compris (à confirmer), je ne vais pas perdre la hiérarchie de mes albums visibles dans piwigo puisque je n'affiche que ces albums virtuels et jamais les albums physiques générés lors des synchronisations...

Est-ce plus clair ?

Par ailleurs, si une procédure de migration a déjà été écrite, et que je l'ai ratée, je suis preneur du lien ;)

Cordialement,

  W.

flop25
2013-11-04 02:58:50

Bonjour
Je ne crois pas avoir compris votre demande: vous faites un synchronisation sur un dossier local puis créez des albums virtuels
Ok, mais pourquoi vous demandez si vous pouvez modifier les id etc ? Pourquoi faire et les modifier dans quel sens ?

Whiler
2013-11-04 02:18:20

Salut,

Ayant changé d'hébergeur, je peux enfin mettre mes galeries sur le même serveur...
J'utilise actuellement la version 2.3.5.

J'utilise un client FTP pour stocker mes images en local... et avoir une arborescence qui me conviennent... je synchronise les répertoires de cette arborescence depuis le Gestionnaire de site (/admin.php?page=site_update&site=1) pour générer les identifiants des catégories/répertoires avec parents, dans la table `categories`.

Sachant que mes images ne sont jamais affichées depuis la catégorie importée (création systématique d'un album virtuel pour les afficher... et type d'accès privé pour le répertoire qui contient les fichiers physiques)...

Est-ce qu'il est ensuite suffisant d'uniquement modifier les données de la table :
`images` : colonnes `path` (chemin relatif local à la place du chemin distant) et `storage_category_id` (id de la catégorie locale générée lors de la synchronisation)

ou faut-il également modifier d'autres tables ?

Après la mise à jour de toutes les photos d'un site distant en modifiant les valeurs des deux colonnes précédentes, suppression du site distant depuis l'interface d'administration du site... (/admin.php?page=site_manager&site=2&pwg_token=***&action=delete)

Y a-t-il d'autres dépendances ? la méthode semble-t-elle correcte ? ou vais-je tout casser ?

Merci,

  W.

Pierrot
2012-09-23 22:57:43

Merci à tous, je vais patienter, la 2.3.4 fonctionne très bien, bien que j'ai eu quelques soucis, lors de la mise à jour du thème OS_default OS_glass_dark_2, les photos ne s'affichaient plus.

Gotcha
2012-09-23 11:56:07

Joyeux anniversaire ^^

Le plugin n'est pas encore sorti :-/

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact