Cyborg
18. August 2012 um 12:32
1
Hallo zusammen,
ich habe mich bei euch registriert, da ich mich seit gestern mit einem Problem quäle.
Ich möchte einen Dump meiner Tabellen in UTF8 erzeugen.
Dies versuche ich mit folgender Befehlszeile:
pg_dump -Fp -a -E UTF8 --inserts blubb > blubb.backup
Als Ergebnis erhalte ich jedoch eine ASCII Datei.
Wenn ich hingegen nur eine bestimmte Tabelle dumpe, wo ich weiß, dass die Umlaute beinhaltet:
pg_dump -Fp -a -E UTF8 --table=account --inserts blubb> blubb.backup
liegt diese ohne Probleme in UTF8 vor.
Für mich also nicht ganz nachvollziehbar
Kann es sein, dass pg_dump nur utf8 macht, wenn die Tabelle auch Umlaute besitzt ?!
Schonmal vielen Dank für eure Hilfe.
Cyborg:
Hallo zusammen,
ich habe mich bei euch registriert, da ich mich seit gestern mit einem Problem quäle.
Ich möchte einen Dump meiner Tabellen in UTF8 erzeugen.
Dies versuche ich mit folgender Befehlszeile:
Als Ergebnis erhalte ich jedoch eine ASCII Datei.
Wenn ich hingegen nur eine bestimmte Tabelle dumpe, wo ich weiß, dass die Umlaute beinhaltet:
liegt diese ohne Probleme in UTF8 vor.
Für mich also nicht ganz nachvollziehbar
Kann es sein, dass pg_dump nur utf8 macht, wenn die Tabelle auch Umlaute besitzt ?!
Schonmal vielen Dank für eure Hilfe.
Versteh Dein Problem nicht:
test=# create database cyborg;
CREATE DATABASE
Time: 641,699 ms
test=# \c cyborg
You are now connected to database "cyborg" as user "kretschmer".
cyborg=# create table test(t text);
CREATE TABLE
Time: 39,922 ms
cyborg=*# insert into test values ('äöü');
INSERT 0 1
Time: 0,474 ms
cyborg=*# commit;
COMMIT
Time: 0,466 ms
cyborg=# \q
kretschmer@tux:~$ pg_dump -Fp -a -E UTF8 --inserts cyborg
--
-- PostgreSQL database dump
--
SET statement_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SET check_function_bodies = false;
SET client_min_messages = warning;
SET search_path = public, pg_catalog;
--
-- Data for Name: test; Type: TABLE DATA; Schema: public; Owner: kretschmer
--
INSERT INTO test VALUES ('äöü');
--
-- PostgreSQL database dump complete
--
kretschmer@tux:~$ pg_dump -Fp -a -E UTF8 --inserts cyborg > cyborg.dump
kretschmer@tux:~$ file cyborg.dump
cyborg.dump: UTF-8 Unicode text
kretschmer@tux:~$
Andreas
Cyborg
18. August 2012 um 15:01
3
Danke für deine Antwort.
Anstatt ‘äöü’ füge mal bitte ‘abc’ ein und schau nochmal, ob sich der dump um utf8 handelt.
Schau doch mal hier UTF-8 unter Eigenschaften, 2. Punkt.
Andreas
Cyborg
18. August 2012 um 16:36
5
Das mag sein, hilft mir jedoch leider bei meinem Problem nicht so wirklich.
Fakt ist, dass ich meine Datenbank bestehend aus mehreren ascii und utf8 tabellen nicht zu einem utf8 dump bekomme.
Die resultierende Dumpdatei ist ascii und alle Umlaute werden nicht richtig angezeigt.
Das klang bisher anders, im letzten Post von Dir stand aou.
Die resultierende Dumpdatei ist ascii und alle Umlaute werden nicht richtig angezeigt.
Wo nicht richtig angezeigt?
Klappt ein Import des Dumps in eine leere DB?
Andreas
Cyborg
19. August 2012 um 11:14
7
In der Datei schon nicht richtig angezeigt.
Und in der DB dann auch nicht
Also, da es auf anderen als Deiner Installatin funktioniert, liegt der Vardacht sehr nah, daß bei Dir was falsch ist.
welches OS
welche PG-Version
bitte ein reproduzierbares Beipsiel liefern
was nutzt Du zur Anzeige des Dumps und was zur Anzeige der Daten in der DB
Andreas
Cyborg
20. August 2012 um 08:28
9
Ich wollte grad dein Beispiel von oben ausführen.
Bekomm es aber nicht einmal hin über Putty Umlaute in der psql Konsole einzugeben -.-
Dann ist wohl PuTTY Dein Problem, das sendet dann wohl auch eine falsche CLIENT_ENCODING an den Server oder so …
Andreas
Cyborg
20. August 2012 um 14:29
11