mysqldump - encoding
Jeg har et encoding-problem, som jeg ikke kan gennemskue.Mit nuværende miljø er:
Windows 11 PC
MySQL innodb_version 5.7.44
Notepad++ v8.4.2
Når jeg i Windows PowerShell laver en query i databasen, så ser æøå ud som forventet. fx 'blåbærgrød'
Men, når jeg laver et dump
mysqldump -u root -p testdb tabel1 tabel2 > c:\dump_20240319.sql
Så ser æøå besynderlige ud, når jeg kikker på dem i notepad++
notepad++ viser default teksten i dump-filen i Encoding UTF16 LE BOM
Her bliver 'blåbærgrød' så vist som 'bl├Ñb├ªrgr├╕d', og den totale dump-fil fylder 20.724.870 bytes
Jeg har prøvet at ændre Encoding i notepad++, men jeg kan ikke få æøå.
Når jeg ændrer Encoding til UTF8 i notepad++, bliver filstørrelsen halveret til 10.390.950 bytes, hvilket er forventeligt
Men 'blåbærgrød' bliver stadig vist som 'bl├Ñb├ªrgr├╕d'
Hvis jeg skifter Encoding til ANSI bliver 'blåbærgrød' vist som 'blåbærgr├╕d'
I al beskedenhed, så lavede jeg også et dump for et lille års tid siden, og her gik alt som forventet. Dvs, jeg lavede et dump, hentede det ind i Notepad++ og ændrede Encoding fra UTF16 til UTF8 og æøå så ud som æøå.
Og her er så de berømte ord "og jeg har ikke ændret noget!!!".
Hvad er sket siden:
Windows er blevet opdateret
Notepad er blevet opdateret
MySQL er den samme
Jeg er overbevist om, at mit mysqldump-statement er det samme, men her må jeg så - hvor nødigt jeg end vil - åbne muligheden for, at jeg kan huske galt.
Dengang blev filstørrelsen også halveret ved at skifte encoding i Notepad++ til UTF8.
Er der en, der kan gennemskue, hvordan jeg kan se æøå som æøå i dump-filen?
(Jeg skal restore dump-filen i en anden MySQL database på en server, og her ser æøå i øjeblikket herrens ud. Det er derfor vigtigt, at jeg får dump-filen korrekt, inden jeg restorer)