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

kodning UTF8 matcher ikke locale en_US; den valgte LC_CTYPE indstilling kræver kodning LATIN1

Jeg svarer på dette, fordi intet fra StackOverFlow virkede for mig.

Jeg kombinerede to løsninger fra andre websteder, der gjorde jobbet (dette svar fungerer for Ubuntu server 12.04 og PGSQL 9.1):

Opret en fil:

nano /etc/profile.d/lang.sh

Tilføj følgende

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

Gem det

Genstart shell eller kør alle eksportkommandoer manuelt i den aktuelle shell-instans

Konfigurer igen, så kodningen kan være UTF8 ([fået det herfra][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';

Brug skabelon1 til oprettelse af db.

Jeg håber dette hjælper;)



  1. Postgres Query Plan, hvorfor rækkeestimering er så forkert

  2. Lav kumulativ sum i view oracle

  3. Forståelse af ACID-modellen til databasestyring

  4. Indsæt i fra CTE