Jump to content

Ripristino del DB e password utenti


mr_rem

Recommended Posts

Ho piu' volte ripristinato il db di prestashop, e l'unica cosa che non mi ha funzionato è stato il ripristino di tutte le password.
In sostanza, dopo aver fatto il completo ripristino del DB, sia le psw di amministrazione che quelle dei clienti, non venivano piu riconosciute correttamente.
Dovevo pertanto richiedere la generazione di nuove password.
E' possibile evitare tutto ciò e riuscire a salvare anche le password?

Grazie

Link to comment
Share on other sites

Prima ho eseguito il backup da back office di prestashop
poi, tramite mysql ho eseguito l'import del file presto da prestashop
Importa tutto correttamente (credo :-) ) tranne le password che non funzionano.
Mi spieghi la modalità da te eseguita per il ripristino dei dati che la provo?
Thanks

Link to comment
Share on other sites

ciao mr_rem,
ho il tuo stesso problema. Volevo crearmi un altro prestashop 1.1 con gli stessi parametri del DB di prestashop 1.1 sul quale ho effettuato un po' di test inizialmente.
- Sono andato in tools > database backup e mi sono esportato la mia copia di database.
- Ho installato il mio secondo PrestaShop 1.1 con un DatabaseX
- Sono entrato nel mio phpmysql e ho cancellato nel mio DatabaseX tutte le tabelle create dall'installazione ed importando successivamente il mio file di backup precedentemente creato con il mio primo Prestashop 1.1.
- Apro la pagina di internet, richiamo il back office ed appare la pagina di admin, con box username e password, li inserisco (i parametri dell'admin) ma risponde che non sono corretti. Sono andato in phpmyadmin nel mio DatabaseX ed ho notato che in id_employee esiste il mio admin (che avevo creato nella precedente versione di PS 1.1)

Come mai non mi riconosce l'admin in back office nonostante esista nel database ?
Avete quache consiglio su come eseguire correttamente l'inserimento di un file di database backup di una stessa versione di prestashop ?

Grazie per l'aiuto

Link to comment
Share on other sites

Credo di aver capito: la hash key con cui vengono criptate/decriptate le password deve essere la stessa. Quindi dovrebbe bastare copiarsi i valori dalla vecchia installazione (file: config/setting.inc.php) alla nuova.

Si devono copiare le due righe dove ci sono le define:

'_COOKIE_KEY_'
'_COOKIE_IV_'


Fammi sapere se funziona!

P.S.: se funziona anteponi [RISOLTO] al titolo del topic.


PP.SS.: azz! sono partner! :bug:

Link to comment
Share on other sites

grazie per l'aiuto vinoalvino,
ho provato come hai suggerito, però "nessun cambiamento", mi da come risultato nel pannello login back office:

There is 1 error
employee does not exist, or bad password

Hai/avete qualche altro suggerimento ?
Ho forse sbagliato qualcosa nel procedimento di creazione del mio nuovo PrestaShop 1.1 con inserimento del DB del precedente prestashop 1.1 ?
Proprio non riesco a capire, sembrava banale come cosa.

1) Installo prestashop1.1 avendo premura di crearmi precedentemente un nuovo databaseX (un nome a caso)
2) esporto dal mio vecchio prestashop 1.1 il backup del mio database.
3) apro phpmyadmin, seleziono il databaseX (quello creato per il il nuovo prestashop) ed elimino tutte le tabelle interne. Successivamente importo il mio backup database esportato dal mio primo prestashop 1.1.
6) Vado alla schermata del pannello admin e mi si apre la pagina di login. Inserisco i dati di admin però NON MI FA ACCEDERE.

Sbaglio qualcosa ?

Link to comment
Share on other sites

grazie vinoalvino sei sempre gentilissimo, però sono confuso. Scusami però sono in un bel casotto.
Come elimino eventuali cookiees di sessione? come faccio ad accedere da un altro pc se testo prestashop in locale?

Nel post da te indicato si dice:

Switch your new COOKIE KEY on your settings.inc.php by the older, or in the table ps_employee change your password by:
MD5 (COOKIEKEYyournewpassword)
like MD5 (KdqeQagpW57jnPZC9mqTW7bXPMghDs5haxnivrvrJRyVEv7m6Kb1qceNmynewpassword)
if your cookie key is: KdqeQagpW57jnPZC9mqTW7bXPMghDs5haxnivrvrJRyVEv7m6Kb1qceN
and you want mynewpassword for password

Sostanzialmente cosa vuol dire ?

Devo inserire la nuova COOKIE KEY nel setting.inc.php al posto di quella vecchia oppure cambiare la password da
MD5 (COOKIEKEYmianuovapassword)
a MD5 (KdqeQagpW57jnPZC9mqTW7bXPMghDs5haxnivrvrJRyVEv7m6Kb1qceNmianuova password)
se il mio cookie key è: KdqeQagpW57jnPZC9mqTW7bXPMghDs5haxnivrvrJRyVEv7m6Kb1qceN
e desiro mianuovapassword come password.

In termini pratici cosa dovrei fare ?
grazie per l'aiuto

Link to comment
Share on other sites

Ho provato a trattare la questione anche sul forum brasiliano.
Premesso che non l'ho ancora provata, per mancanza di tempo, e comunque lo faro' su un sito di collaudo, la loro soluzione è la seguente:

- fare il backup di tutte le cartelle del sito con la versione vecchia di prestashop

- estrarre la nuova versione di prestashop sull'hd del computer

- copiare le cartelle img, theme, translations e mudules del vecchio sito e sostituirle a quelle della nuova versione di
prestashop scompattata sull'hd

- prendere, nella cartella config, del vecchio prestashop, il file settings.inc.php e incollarla nella cartella config della
nuova versione di prestashop.

- Trasferire i file della nuova versione, con le modifiche apportate, sul server e eseguire l'installazione digitando
http://www.iltuoindirizzo.com/install

- Non bisogna azzerare il vecchio db. Loro ritengono infatti che la nuova installazione non arrecherà alcun danno al vecchio DB.

Che ne pensate?

Link to comment
Share on other sites

Spiego meglio l'operazione:

1) aprire il file config/setting.inc.php della VECCHIA versione
2) copiare le due righe delle define suddette
3) aprire config/setting.inc.php della NUOVA versione
4) rimpiazzare le due righe con le vecchie

Dovrebbe funzionare tutto. L'unica possibilità che non funzioni è che ci sia un cookie di sessione aperto. Sinceramente non saprei come eliminarlo. Dimmi se hai provato a fare come descritto.

Link to comment
Share on other sites

ciao mr_rem, ho letto il tuo post ma sorge un dubbio. Quando installo prestashop si presenta la pagina dove richiede i parametri del database e se inserisco quelli di uno nuovo all'interno del quale ho importato backup esistenti non mi fa procedere con l'installazione. Infatti, originariamente avevo fatto così:

1) Backup Database dal mio vecchio prestashop 1.1

2) Creazione di un nuovo DatabaseX con importazione delle tabelle del vecchio database Prestashop 1.1

3) Nella procedura di installazione del nuovo prestashop 1.1, arrivato alla schermata di inserimento paramentri database, inserivo quelli del database creato al punto 2 , e la risposta dell'installazione era la seguente: "il database già esiste", quindi nella procedura di installazione (credo) bisogna impostare un database vuoto e dopo importagli il backup di quello vecchio.


Credimi, pensavo fosse cosa più semplice. Backup vecchio DB, importazione, fatto!
Adesso non mi fa più loggare con l'admin nel nuovo e neanche i clienti.

Non so che fare, spero qualche persona di buon cuore mi sappia aiutare. Vinoalvino mi ha dato gentilmente grandi delucidazioni, che però non riesco a capire come muovermi. Mi auguro di risolvere. scusate se vi faccio perdere tanto tempo prezioso.

Link to comment
Share on other sites

si vinoalvino.. ho fatto come hai detto:

1) aprire il file config/setting.inc.php della VECCHIA versione
2) copiare le due righe delle define suddette
3) aprire config/setting.inc.php della NUOVA versione
4) rimpiazzare le due righe con le vecchie

..sempre lo stesso errore:

There is 1 error
employee does not exist, or bad password


cosa ne pensi ?

Link to comment
Share on other sites

Switch your new COOKIE KEY on your settings.inc.php by the older, or in the table ps_employee change your password by:
MD5 (COOKIEKEYyournewpassword)
like MD5 (KdqeQagpW57jnPZC9mqTW7bXPMghDs5haxnivrvrJRyVEv7m6Kb1qceNmynewpassword)
if your cookie key is: KdqeQagpW57jnPZC9mqTW7bXPMghDs5haxnivrvrJRyVEv7m6Kb1qceN
and you want mynewpassword for password


Dunque .... prova a scrivere questo file php

<?php
       /* metti la VECCHIA hash */
       $hash='gjsdfhljksghlfkjghljkguhrughlfgdf';
       /* metti una password nuova */
       $newpassword='nuovapassword';
   print MD5($hash . $newpassword );
?>



Salva il file come x.php nella cartella di prestashop e lancialo con il browser

SE ho capito bene ti dovrebbe tornare una stringa criptata che devi copiare e mettere nella tabella ps_employe come password (utente tuo che usi per fare login in BO)

SE ho capito bene ora dovresti accedere al BO.

Link to comment
Share on other sites

Ho solo 3 parole (che non sono sole, cuore e amore):

SEI UN GRANDE !!!!!!!!!!!!!!!!!!!!

ho fatto come hai detto e TUTTO FUNZIONA in locale. Bisogna testare la cosa in remoto.

Lo rispiego più dettagliatamente per quanti si ritrovassero nella medesima situazione:

1) inserite la vecchia hash ( codice che trovate nel file ..config\setting.conf.php con il nome: define('_COOKIE_KEY_' ...)
nel codice da "vinoalvino" suggerito;

2) inserite la nuova password nel medesimo codice suggerito sopra da vinoalvino;

4) salvate il file nella directory di prestashop ad es. nominandolo come x.php; aperto il browser e digitato il percorso per aprire il fil x.php precedentemente creato = (magia esce una stringa di numeri che è la nuova password criptata);

5) aprite phpmyadmin e selezionate la tabella ps_employee -> modifica: ed inserite la stringa di cui al punto 4 (x.php)

6) aperta la pagina di login admin BO: email e nuova password = VAI....SI ACCEDE !!!!

Più tardi effettuo nuove prove sia in locale che in remoto e vi faccio sapere.

Grazie vinoalvino !!! ...sei UNICO...

Link to comment
Share on other sites

Si ma questo risolve solo il problema di accedere al B.O.!
E comunque lo si poteva risolvere richiedendo una nuova password nella schermata d'accesso.
Quello che mi preoccupa invece sono le password dei clienti.
Come salvarle nella migrazione del DB?
Se hai 1 cliente puoi anche inviargli la password rigenerata ma se ne ai 1000 di clienti?
Oltre al lavoro per rigenerare le password pensate all'eventuale danno di immagine.
Per questo sto' cercando una soluzione.
Grazie comunque ad entrambi per i vostri interventi.

Link to comment
Share on other sites

hai ragione mr_rem, non ci avevo pensato anche al problema del login degli utenti. Chissà vinoalvino che ne pensa di questa cosa. Confido molto nel suo parere.

In effetti cosa accadrebbe se si dovesse reinstallare un prestashop già in remoto, e dovessimo importare il vecchio database backup ?
Come si gestirebbe la problematica relativa alla password dei clienti ? Q
uello che mi domando: "possibile che mettono una funzione di import/export DB e poi funziona a metà?
Non si dovrebbe domandare al team prestashop come mai si verifica questo e come si potrebbe fare per risolvere la problematica delle password utenti che non vengono riconosciute dopo una importazione di un vecchio DB ?

Link to comment
Share on other sites

Ciao ragazzi, avevo postato lo stesso problema sul forum francese ed inglese.
Mi ha risposto il moderatore francese, che suggerisce la stessa cosa che sin dall'inizio aveva evidenziato vinoalvino:

"Verificare nel file config/settings.inc.php delle due versioni se i COOKIE_KEY hanno lo stesso valore.

Se i COOKIE_KEY risultassero differenti, (dopo avere fatto una copia del file originale config/settings.inc.php della nuova installazione di prestashop), bisognerebbe copiare il valore della versione dove le password sono riconosciute nel file della versione dove le password non lo sono e ritentare".

Quindi c'è da provare sia in locale che in remoto. Speriamo che qualcun'altro (anche dafli altri forum) si faccia avanti per un' ulteriore e possibile risoluzione della problematica.

Grazie a tutti ..mi auguro si risolva perchè e davvero importante come cosa.
Se ci sono risposte da altri forum vi tengo aggiornati.

Link to comment
Share on other sites

  • 1 year later...
Sarà che nessuno è incappato nello stesso problema?
Avete mai ripristinato un db di prestashop?
Se si, il negozio aveva clienti o no?
E le password, funzionavano correttamente dopo il ripristino?
:gulp: :roll:

ciao ho un problema....
ho importato un file csv quello dell'esempio di ciroco05
come categoria.. e il risultato é una categoria mattone che incorpora le altre categorie del negozio già esistenti..
sto pasticcio l'ho combinato in remoto..
e ora non mi accede più da bo nella scheda catalogo..
cme posso fare per ripristinare il database solo quello dei prodotti?
ho dei backup ma nn so come ripristinarli...
se non mi accede più alla scheda prodotti cosa può essere successo?
grazie a tutti.
vi prego rispondete
Link to comment
Share on other sites

Se hai il DB in locale e hai il DB in remoto basta che cancelli le tabelle dei prodotti ma segnalartele tutte .....

se invece non hai problemi di clienti registrati allora puoi semplicemente cancellare il DB e reinstallare da locale a remoto e sei subito operativo

Ciao ;-)

Link to comment
Share on other sites

ciao germano grazie per la risposta..
ho 5 users.. ma il problema é che non so come ripristinare il database...
una volta lo si fa..
poi il macello delle pass degli users leggevo prima da qualche parte ...
ma dici che é la soluzione più immediata e indolore?
come faccio a reimportare il backup e sovrascriverlo su quello attuale?
in locale non ho nulla , avevo provato a scaricare xampp ma non ho ancora potuto testare la sua funzionalità per fare test in locale , infatti ho fatto quel casino in remoto..

Link to comment
Share on other sites

io ho semplicemente un backup quello che ti crea prestashop..
ti invio i campi che ho aggiunto come categoria nell'import da csv
1;1;mattone;home;10;20;;;;;;;;;;;;;;;mattone con buchi;mattone con buchi;;;;;;;c:\foto\1.jpg;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
questi sopra sono i dati che ho importato come csv come categoria direttamente dal modulo import di prestashop..
se hai qualche dritta da darmi...
ti ringrazio..

Link to comment
Share on other sites

Io pensavo lavorassi in locale e poi avessi anche in remoto

I casini sono molti se non hai un Backup per il dB

praticamente devi scoprire cosa ti ha aggiunto e come

Ciao ;-)


io non ho ancora capito come usare xampp per lavorare in locale..ossia dove caricare il sito etc....
Link to comment
Share on other sites

Se hai il DB in locale e hai il DB in remoto basta che cancelli le tabelle dei prodotti ma segnalartele tutte .....

se invece non hai problemi di clienti registrati allora puoi semplicemente cancellare il DB e reinstallare da locale a remoto e sei subito operativo

Ciao ;-)

ciao scusa se ti disturbo ancora..
io ho il backup di prestashop come faccio a fare il restore del tutto da questo?
saluti
Link to comment
Share on other sites

Ciao pesto,

mi dispiace che per seguire il mio suggerimento ti sei incasinato... comunque:

* per favore, se hai un problema, non postare "ovunque" con la stessa richiesta, apri un 3d dedicato

* per il futuro non effettuare mai modifiche radicali ed importanti sul sito online (se già attivo); è meglio avere una copia in locale e smanettare senza pietà, trasferendo in remoto solo le modifiche che non creano problemi; segui il consiglio di Germano, installa easyphp o wamp

* perfetto il fatto che abbia effettuato un backup.. sempre utile

* in verità non ho capito cosa ti sia successo, però se hai una copia del database, perfettamente funzionante e vuoi ripristinarla, puoi effettuarlo direttamente in phpmyadmin, seguendo questi passi:

1) fatti un'altra copia del db corrotto... hai visto mai

2) lancia phpmyadmin, ti esce la schermata iniziale, crea un nuovo db, nome a piacere, per comodita nomenew

3) il db ora creato è completamente vuoto: importa con il comando importa, menu in alto, il tuo db sperando che lo legga (se è più grande di 2 mega e non compresso (mi sembra che accetti solo la compressione gzip) non c'è verso di farlo importare

4) hai il tuo database ripristinato con tutte le tabelle aggiornate al backup effettuato

5) rinomina il tuo database che hai in produzione, che per comodità lo chiameremo nome, (ovviamente sostituisci nome con il vero nome che che c'è ora, altrimenti non sarà riconosciuto) in nomebak

6) rinomina nomenew in nome (ricorda, sempre il nome vero che avevi prima)

7) fatto: avrai il db nome con i dati del backup, ed il db nomebak con i dati corrotti, se funziona tutto puoi eliminare il db nomebak

Se non ti senti sicuro chiedi ulteriori info prima di fare altri casotti ;-)

Ultimo consiglio, quando lavori con i db fai sempre delle copie con phpmyadmin, puoi copiare l'intero database in in'altro o fare delle copie di backup compresse.

Ciroco05

Link to comment
Share on other sites

Ciao pesto,

mi dispiace che per seguire il mio suggerimento ti sei incasinato... comunque:

* per favore, se hai un problema, non postare "ovunque" con la stessa richiesta, apri un 3d dedicato

* per il futuro non effettuare mai modifiche radicali ed importanti sul sito online (se già attivo); è meglio avere una copia in locale e smanettare senza pietà, trasferendo in remoto solo le modifiche che non creano problemi; segui il consiglio di Germano, installa easyphp o wamp

* perfetto il fatto che abbia effettuato un backup.. sempre utile

* in verità non ho capito cosa ti sia successo, però se hai una copia del database, perfettamente funzionante e vuoi ripristinarla, puoi effettuarlo direttamente in phpmyadmin, seguendo questi passi:

1) fatti un'altra copia del db corrotto... hai visto mai

2) lancia phpmyadmin, ti esce la schermata iniziale, crea un nuovo db, nome a piacere, per comodita nomenew

3) il db ora creato è completamente vuoto: importa con il comando importa, menu in alto, il tuo db sperando che lo legga (se è più grande di 2 mega e non compresso (mi sembra che accetti solo la compressione gzip) non c'è verso di farlo importare

4) hai il tuo database ripristinato con tutte le tabelle aggiornate al backup effettuato

5) rinomina il tuo database che hai in produzione, che per comodità lo chiameremo nome, (ovviamente sostituisci nome con il vero nome che che c'è ora, altrimenti non sarà riconosciuto) in nomebak

6) rinomina nomenew in nome (ricorda, sempre il nome vero che avevi prima)

7) fatto: avrai il db nome con i dati del backup, ed il db nomebak con i dati corrotti, se funziona tutto puoi eliminare il db nomebak

Se non ti senti sicuro chiedi ulteriori info prima di fare altri casotti ;-)

Ultimo consiglio, quando lavori con i db fai sempre delle copie con phpmyadmin, puoi copiare l'intero database in in'altro o fare delle copie di backup compresse.

Ciroco05


ciao grazie della risp..
il problema che unzippato é di 17 mb il backup quindi devo lasciarlo zippato?
ma non lo legge se lo carichi zippato come é...
poi proverò a ripristinare se ci riuscirò ancora non ci sono riuscito ma prima o poi ce la farò.
quanto al problema consiste nel fatto che dopo aver importato il tuo "mattone" come categoria non riesco più ad accedere alla cartella catalogo da bo.
molto strano vero..e vorrei accedervi per togliere sto mattone cosa pensavo per altro immediatamente fattibile dopo il test di import...
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...