所选择的LC_CTYPE设置需要对"LATIN1"进行编码. [英] The chosen LC_CTYPE setting requires encoding "LATIN1"

查看:291
本文介绍了所选择的LC_CTYPE设置需要对"LATIN1"进行编码.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在PostgreSQL 9.4中创建数据库

I'm trying to create a database in PostgreSQL 9.4

CREATE DATABASE "dbname"  WITH ENCODING 'UTF8';

但得到

ERROR:  encoding "UTF8" does not match locale "en_US"
DETAIL:  The chosen LC_CTYPE setting requires encoding "LATIN1".

错误. PostgreSQL在一个无所事事的盒子上,我正在通过SSH隧道连接到该数据库服务器.流浪者盒子的语言环境设置:

error. PostgreSQL is on a vagrant box and I'm connecting to this db server over SSH tunneling. Vagrant box's locale settings :

root@precise32:/vagrant# locale
LANG=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

我的计算机的语言环境设置:

My computer's locale settings:

erayalakese at Eray-MacBook-Air in ~/Desktop/VAGRANTBOXES
$ locale
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL="en_US.UTF-8"

在安装PostgreSQL 9.4之后,我没有更改语言环境设置.

I didn't change locale settings after installing PostgreSQL 9.4.

我该如何解决这个问题?

How can I solve this problem?

推荐答案

虽然我不知道为什么选择该语言环境,但也可以通过指定LC_CTYPE等来解决它.

While I don't know why it's choosing that locale, you can work around it by specifying LC_CTYPE etc too.

CREATE DATABASE "dbname"  WITH ENCODING 'UTF8' LC_CTYPE 'en_US.UTF-8' LC_COLLATE 'en_US.UTF-8';

或类似的

这篇关于所选择的LC_CTYPE设置需要对"LATIN1"进行编码.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆