2013-02-19 46 views
0

我需要更改使用pg_dump命令創建的壓縮.dmp文件的編碼。目前我只有轉儲文件而不是整個數據庫。我如何修改文件以符合其他編碼?我想從win1252到latin1。在Linux機器上使用iconv時,它告訴我win1252不受支持。需要更改壓縮sql .dmp文件的編碼

回答

2

來自Postgres的.dmp文件是一個普通的純文本文件,因此您應該可以使用例如的iconv。假設你想從UTF-8切換到LATIN1,你可以這樣做:

iconv -f utf-8 -t latin1 <infile >outfile 

請注意,雖然這隻會改變字符的編碼。如果您需要更改用於創建表,列等的DDL,則需要手動修改文件。或者導入它,進行更改並再次導出。

+0

我想從win1252去latin1和它的說win1252不支持 – user972276 2013-02-19 19:17:42

+0

我遇到的問題是,當我嘗試從編碼在win1252中的dmp文件導入到linux nmachine數據庫,我得到一個錯誤說postgres不能從win1252轉換到latin1。我想能夠無誤地將數據庫導入到Linux框中 – user972276 2013-02-19 19:23:53

+0

嘗試使用cp1252,它相當於win1252。 – 2013-02-19 19:23:58

相關問題