Bash-Script UTF8 aus UTF8 MySQL

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
Benutzeravatar
xcomm
Beiträge: 804
Registriert: 21.09.2003 05:12:01
Wohnort: Europe
Kontaktdaten:

Bash-Script UTF8 aus UTF8 MySQL

Beitrag von xcomm » 15.09.2013 16:05:14

Hi Gemeinde,

habe hier ein komisches Problem in Bash-Scripten. Diese fragen eine MySQL 5.5.3x in UTF8 unter wheezy ab.
Die Bash-Script werfen auf der Konsole seit einiger Zeit komische Charakter für die deutschen Umlaute aus.
(Meiner Erinnerung nach, gab es das Problem in MySQL 5.1.6x unter squeeze nicht.)

Hat jemand eine Idee, woran das liegen könnte?

Code: Alles auswählen

locale
LANG=de_DE.UTF-8
LANGUAGE=
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=
Habe folgendes Probiert.

In Bash MySQL explizit vor dem Query für die Connection:

Code: Alles auswählen

mysql  -e"set names utf8;"
In Bash-Script explizit nochmal gesetzt:

Code: Alles auswählen

#!/bin/bash
export LANG=de_DE.UTF-8
export LOCALE=UTF-8
In MySQL my.cnf sieht es so aus:

Code: Alles auswählen

[client]
default-character-set=utf8

[mysqld]
character-set-server=utf8
collation_server=utf8_unicode_ci
Im Apache 2 mit PHP gibt es keinerlei Probleme.

In einem PHP-Cli CSV-Export gab es Probleme, welche, mit dem expliziten Setzen vom Internal Encoding gelöst wurde.

Code: Alles auswählen

mb_internal_encoding("UTF-8");
Danke, xcomm

Gunah
Beiträge: 366
Registriert: 24.04.2005 17:00:42
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Bash-Script UTF8 aus UTF8 MySQL

Beitrag von Gunah » 16.09.2013 10:43:00

Da es sich um PHP handelt... prüfe einfach mal alle Dateien, ob die Wirklich alle UTF-8 (oder ASCII) sind, oft liegt es nur daran, dass eine Datei in einer anderen Zeichekodierung vorliegt...

Benutzeravatar
xcomm
Beiträge: 804
Registriert: 21.09.2003 05:12:01
Wohnort: Europe
Kontaktdaten:

Re: Bash-Script UTF8 aus UTF8 MySQL

Beitrag von xcomm » 16.09.2013 12:08:59

Hi Gunah,

danke für Deine Antwort.

Das PHP war nur als Beispiel genannt, wo das UTF8 aus der MySQL DB klappt.

Leider klappt es bei Shellscripten nicht. Dort sind in der Ausgabe verhunzte Umlaute.

Ideen?

Danke xcomm

Benutzeravatar
xcomm
Beiträge: 804
Registriert: 21.09.2003 05:12:01
Wohnort: Europe
Kontaktdaten:

Re: Bash-Script UTF8 aus UTF8 MySQL

Beitrag von xcomm » 21.09.2013 21:58:04

Hi Gemeinde,

ich sehe gerade, das es in der PHP-CLI doch nicht funktioniert. Im Prinzip ist es, wie in der Bash.

Im Apachen ist alles ok und UTF-8, Sobald ich es dort auf 8859-1 stelle sieht das "ö" dort so aus "ö".

Im MySQL Client habe ich das Ganze nun mal auf latin1 gestellt und dort wird der aus UTF-8 "ö" unter latin1 ein "ö".

Habt Ihr Ideen wo der Fehler liegen kann?

Danke, xcomm

Antworten