PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

la codifica UTF8 non corrisponde alla locale en_US; l'impostazione LC_CTYPE scelta richiede la codifica LATIN1

Rispondo a questo perché nulla di StackOverFlow ha funzionato per me.

Ho combinato due soluzioni di altri siti che hanno fatto il lavoro (questa risposta funziona per il server Ubuntu 12.04 e PGSQL 9.1):

Crea un file:

nano /etc/profile.d/lang.sh

Aggiungi quanto segue

export LANGUAGE="en_US.UTF-8"
export LANG="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"

Salva

Riavvia la shell o esegui manualmente tutti i comandi di esportazione nell'istanza della shell corrente

Riconfigura in modo che la codifica possa essere UTF8 ([l'ho preso da qui][1])

sudo su postgres

psql

update pg_database set datistemplate=false where datname='template1';
drop database Template1;
create database template1 with owner=postgres encoding='UTF-8'

  lc_collate='en_US.utf8' lc_ctype='en_US.utf8' template template0;

update pg_database set datistemplate=true where datname='template1';

Usa template1 per la creazione del db.

Spero che questo aiuti;)