我用
pg_dump.exe -U postgres -f "file-name.sql" database-name
在PostgreSQL 8.4和9.5,Windows主机上备份UTF-8编码的数据库。有些可能会有字符列中存储的中文,泰文等外来字符。
在Notepad ++中打开时,生成的.sql文件显示 ANSI 编码(默认情况下,我没有将ANSI应用于打开的文件)。我如何知道转储文件中是否始终保留Unicode字符?我应该使用归档(对象)备份文件吗?
答案 0 :(得分:2)
默认情况下,转储是在数据库编码中创建的。
如果没有使用扩展字符,ANSI编码和UTF-8中的文本文件没有区别。也许您的转储没有特殊字符,因此编辑器不会将其识别为UTF-8。
如果您希望以特定编码进行SQL转储,请使用--encoding=encoding
参数或PGCLIENTENCODING
环境变量