Í gær sáum við þátt í seríunni Vinir þar sem kom fram að Monica vissi að starf Chandlers væri flutningur og umbreyting á gögnum (ég var næstum búinn að kjafta frá en mundi að almennar útsendingar hér á landi eru ekki komnar svo langt). Í dag hefur dagurinn hjá mér farið í ofangreint, ég hef verið að flytja gögn úr MySQL-gagnagrunni og yfir í PostgreSQL-gagnagrunn. Þetta ætti að vera einfaldasta mál í heimi ef ekki væri fyrir eitt oggulítið vandamál.
Stafasettið sem MySQL er að nota er ISO 8859-1 (sem er meðal annars notað í Vestur-Evrópu) en PostgreSQL setti ég upp með UTF-8 stafasettinu, UTF-8 var reyndar hluti af því hvers vegna ég er að flytja gögnin yfir. UTF-8 er sumsé hluti af Unicode staðlinum en með honum er hægt að skrifa öll þekkt skriftákn eins og til dæmis íslenska stafi, kínverska stafi, japanska stafi og meira að segja Klingon.
Eftir miklar pælingar, vangaveltur og tilraunir fann ég loksins aðferð sem virkar:
- Gera “dump” úr MySQL í .cvs skrá
- Opna “dumpið” í Excel, hentugt fyrir dálkatilfærslur
- Vista skrána sem Tab-delimited text
- Opna þá skrá með jEdit sem iso8859-1 skrá en vista sem UTF-8 skrá
- Senda skrána á gagnagrunnsþjóninn
- Flytja skrána inn í PostgreSQL með psql-tólinu og COPY skipuninni
Krókaleið en hún virkar.