Re: v8.3 + UTF8 errors when restoring DB

From: "Dean Gibson (DB Administrator)" <postgresql(at)ultimeth(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: v8.3 + UTF8 errors when restoring DB
Date: 2008-03-09 13:57:51
Message-ID: 47D3ECDF.5010303@ultimeth.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2008-03-09 01:45, Mitchell D. Russell wrote:
>
> New to the list, so please forgive me in advance :)
>
>
> I've been running 8.2 on windows server 2003 for quite some time now.
> The database that I take care of stores records with various languages
> in it (russian, chinese, etc) and has been working fine.
>
> I did a PG_dump of the database tonight, and went to restore it to my
> newly created database (WIN2152 encoding), which worked fine, but when
> I go to retrieve the data via my code (.NET c#), I get errors like :
>
> character 0x8f of encoding "WIN1252" has no equivalent in "UTF8"
> character 0x81 of encoding "WIN1252" has no equivalent in "UTF8"
> character 0x9d of encoding "WIN1252" has no equivalent in "UTF8"
>
> The database driver is set to unicode mode, so I turned that off, but
> of course end up with gibberish instead of the russian and chinese
> that were there before.
>
> So then I tried creating a new database with unicode formatting and
> restoring my 8.2 dump file to that, when I do that, I get these errors
> (using PSQL):
>
> ERROR: invalid byte sequence for encoding "UTF8": 0x92
> HINT: This error can also happen if the byte sequence does not match
> the encoding expected by the server, which is controlled by
> "client_encoding".
>
> CONTEXT: COPY cin_tbl_data, line 6
> ERROR: invalid byte sequence for encoding "UTF8": 0x99
> HINT: This error can also happen if the byte sequence does not match
> the encoding expected by the server, which is controlled by
> "client_encoding".
>
> so I just don't know what to do. my 8.2 database used SET
> client_encoding = 'SQL_ASCII'; according to the dump file - so I can't
> wrap my head around why I can't get this data to come out.
>
> Any help would be very much appreciated.
>

Well, you partially hosed yourself when you did the dump using a
'client_encoding' of 'SQL_ASCII'. If the 8.2 database is still around,
redo pg_dump using the '-E' parameter to set the client_encoding to
UTF-8, then import the data into your 8.3 database created with a UTF-8
encoding.

If you don't have the 8.2 server around any more, it's a bit more
complicated. How did you do the pg_dump (what format)?

--
Mail to my list address MUST be sent via the mailing list.
All other mail to my list address will bounce.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Reid Thompson 2008-03-09 15:34:21 Re: loading a psql input file on win xp
Previous Message Martijn van Oosterhout 2008-03-09 10:26:17 Re: v8.3 + UTF8 errors when restoring DB