Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Postgresql 9.2 installation on Ubuntu 12.04

For installing postgresql 9.2 I followed this url : http://www.ubuntugeek.com/how-to-install-postgresql-9-2-on-ubuntu-server-using-ppa.html

But at the end of installation output is like :

Setting up postgresql-common (140~precise) ...
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Adding user postgres to group ssl-cert
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
 * No PostgreSQL clusters exist; see "man pg_createcluster"
Setting up postgresql-9.2 (9.2.4-0ppa1~precise) ...
Error: The locale requested by the environment is invalid.
Error: could not create default cluster. Please create it manually with

  pg_createcluster 9.2 main --start

or a similar command (see 'man pg_createcluster').
update-alternatives: using /usr/share/postgresql/9.2/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode.
 * No PostgreSQL clusters exist; see "man pg_createcluster"
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place

And when I tried to start postgresql, it gives following error :

sudo /etc/init.d/postgresql start
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_MESSAGES = "en_IN.UTF-8",
    LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
 * No PostgreSQL clusters exist; see "man pg_createcluster"

How can I fix this problem ?

like image 323
Naresh J Avatar asked Jul 01 '13 07:07

Naresh J


2 Answers

I tried all of the solutions that I could find, but in the end this post sorted it:

http://ubuntuforums.org/showthread.php?t=1720356

Basically, add the language you want to /etc/environment. In my case:

sudo nano /etc/environment

Then added this to the end of the file:

LC_ALL="en_US.utf-8"

Then reboot the server

sudo reboot
like image 55
Dave Flynn Avatar answered Oct 18 '22 11:10

Dave Flynn


Your system locale configuration is messed up. Your LC_MESSAGES is set to en_IN.UTF-8 but LANG is set to en_US.UTF-8 which is weird and inconsistent. Did you set LC_MESSAGES in your ~/.bash_profile, /etc/environment or something?

You really should dpkg-reconfigure locales. See how to select and generate locales in Ubuntu.

Once you've fixed your locale setup, you can use the pg_wrapper command pg_createcluster 9.2 main --start as suggested by the error to create the cluster. After that, starting the service will work.

like image 30
Craig Ringer Avatar answered Oct 18 '22 11:10

Craig Ringer