Gå til innhold

Problemer med tegnsett i forhold til importering!


Anbefalte innlegg

Jeg er lei av one.com og bytter webhotell til servetheworld. Fra servetheworld fikk jeg vite at jeg ikke kan importere større filer enn 2MB via phpmyadmin, så jeg bruker putty.

 

Her er kommandoen som jeg bruker til å importere fila med:

mysql -hserver -uuser -ppassword database_navn < sql.fil

 

Det som er problemet er at æ, ø og å fucker seg når jeg importerer. I sql fila vises de greit, men etter importering har de blitt erstatta av rare tegn. Jeg husker da mitt gamle webområde gikk ned og jeg skulle ha databasen over på egen webserver, da måtte jeg velge utf8 i importeringen (via phpmyadmin) for at tegnene skulle vises rett. Det rare var at i sql fila står det charset=latin1 over hele linja men i phpmyadmin ble det feil om jeg valgte latin1 før jeg importerte om dere skjønner.

Endret av Umbrello
Lenke til kommentar
Videoannonse
Annonse

Etter en lengre VNC-session fra en som kan mye mer om dette enn meg så fikk jeg følgende oppdatering:

 

Problemet er at du har feil tegnsett i tabellene dine. Tegnsettet støtter ikke æøå.

Du har x tabeller med feil tegnsett, og tabellene inneholder æøå. Du har tatt backup og skal restore på en annen server,

Men da går det ille fordi serveren ikke skjønner tegnsettet (pga default tegnsett på serveren er noe helt annet enn utf8_unicode_ci som

støtter spesialtegn som æøå)

Du trenger da å convertere charsett linjene i sql fila vha notepad/putty. du Har så langt prøvd med tegnesettet utf8 (uten noe bak)

men det ga standarden utf8_general_ci noe som ikke inneholder støtte for spesialtegn. Du har også prøvd med å bytte

ut charset linjene med utf8_unicode og unicode_unicode_ci, men da fikk du som svar ifra serveren at tegnsettene støttes ikke.

Noe som bare er tull ettersom du klarte og sette tegnsettet utf8_unicode_ci for hånd vha phpmyadmin. Men ettersom basen

inneholder x tabeller, så tar det et par år og gjøre for hånd. Så hva er eventuelt riktig charsett (utf8) navn som du

kan erstatte charsett linjene med i sql backup fila, eventuelt finnes det en annen løsning på problemet?

Endret av Umbrello
Lenke til kommentar

"Det rare var at i sql fila står det charset=latin1 over hele linja"

 

Hvis du endrer denne linja til charset=utf-8 så blir kanskje mysql mindre forvirret?

 

Ser for meg at mysql sjekker command line parametrene som sier at du skal lese inn som utf-8, mens fila sier latin1. Resultatet blir at den prøver å gjøre om fra latin1 til utf-8. Er ikke rart det blir feil når filen er på utf-8 format til å begynne med...

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...