为postgres设置initdb编码

时间:2016-10-12 14:15:58

标签: postgresql postgresql-9.6 postgresql-initdb pg-ctl

当我尝试使用init [db]调用pg_ctl时,无法识别设置编码的选项:

pg_ctl init -D=D:\testdata -E=UTF8 -U=postgres
pg_ctl: illegal option -- E

这改变了吗?我使用了最新的PostgreSQL 9.6(zip下载,x64)。 当我不使用-E开关时,一切正常,但数据库集群使用错误的编码初始化。

1 个答案:

答案 0 :(得分:2)

pg_ctl没有选项-E。如果您想通过initdb运行pg_ctl,则需要使用initdb传递-o个选项,例如pg_ctl initdb -D ... -o "-E=UTF8"

但直接致电inidb要容易得多:

initdb -D=D:\testdata -E=UTF8 -U=postgres