Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Problema charset MySQL

  1. #1

    Problema charset MySQL

    Ciao a tutti,
    ho un problema con la gestione del charset in fase di DUMP:

    > Se io faccio un'esportazione da phpMyAdmin e salvo il dump non ho alcun problema a ripristinarlo (sempre tramite phpMyAdmin).
    > Se però effettuo il dump tramite mysqldump, o se cerco di aprire da linux (tramite vi, cat, ecc...) il file esportato da phpMyAdmin ho parecchi problemi di conversione di caratteri accentati e altri caratteri particolari.

    Ho effetuato innumerevoli tentativi cercando di gestire il cahrset in fase di dump, conversione dei file generati, macumbe varie, ma nulla.... non riesco proprio a venirne a capo...

    Ho provato anche a cercare di fare un "cerca/sostituisci" tramite il comando "sid" di linux, ma nulla... non riconosce i caratteri....

    Qualcuno di voi ha avuto problemi simili ed è riuscito a risolvere?
    Grazie &

  2. #2
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Hai provato a reimportarlo da riga di comando in questo modo:
    codice:
    debo:~ $ mysql -u [user] -p [database] < dump.sql
    Ti da problemi? Te lo chiedo semplicemente perché il fatto che tu lo apra con vi o cat e hai problemi potrebbe non c'entrare con il dump bensì da vi e cat stessi che potrebbero non essere configurati per usare UTF-8 o qualsiasi altro charset tu stia usando.

  3. #3
    Si, il problema persiste, e si presenta sia sul server di produzione che su quello di test.

  4. #4
    Per esempio questa sequenza di caratteri: "[±||||±]" viene esportata come "[±||||±]"

    ... il problema è che non riesco nemmeno a fare un workaround che mi va a fare un "cerca/sostituisci" per sistemare il file in quanto il carattere "Â" non viene trovato...

  5. #5
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Hai provato con l'apposito parametro a specificare il charset che vuoi?

    http://dev.mysql.com/doc/refman/5.1/...-character-set

  6. #6
    Si, ho provato con il --default-character-set ma senza alcuna differenza di esportazione

  7. #7
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Che character usi nel database e con che character esporti?

  8. #8
    Il DB è in latin1_swedish_ci; di default esporta in UTF8 ma ho provato a
    - imporre l'esportazione in latin1_swedish_ci
    - convertire il DB in UTF8 (con reinserimento dati in modo da convertire effettivamente il contenuto)
    ... ma nulla da fare...

  9. #9
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Se converti il DB in UTF-8 una volta che hai inserito i dati nel formato sbagliato sei tra virgolette fritto. Inoltre devi anche cambiare e controllare il charset delle singole tabelle non solo quello del DB.
    Dovresti debuggare un pochino phpMyAdmin e vedere un attimo che cosa combina all'interno nel tuo caso specifico, capitò anche me anni fa... mooooolti anni fa ed ho dovuto spulciare quello che phpMyAdmin stava facendo per risolvere.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.