Eu tenho o CentOS 6.7 instalado no meu servidor:
bash-4.1# uname -r
2.6.32-573.18.1.el6.x86_64
Após a reinicialização do servidor, meu servidor PostgreSQL 9.6 não está iniciando devido ao problema de localidade.
Aqui está a mensagem de erro de log: pgstartup.log
< 2017-01-26 16:33:08.115 IST > LOG: invalid value for parameter "lc_messages": "en_US.UTF-8"
< 2017-01-26 16:33:08.123 IST > LOG: invalid value for parameter "lc_monetary": "en_US.UTF-8"
< 2017-01-26 16:33:08.123 IST > LOG: invalid value for parameter "lc_numeric": "en_US.UTF-8"
< 2017-01-26 16:33:08.123 IST > LOG: invalid value for parameter "lc_time": "en_US.UTF-8"
< 2017-01-26 16:33:08.123 IST > FATAL: configuration file "/var/lib/pgsql/9.6/data/postgresql.conf" contains errors
Espera-se que o código de idioma "en_US.UTF-8" esteja disponível no sistema.
Eu verifiquei e está de fato disponível.
bash-4.1# locale -a | grep en_US
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_COLLATE to default locale: No such file or directory
en_US
en_US.UTF-8
en_US.iso88591
en_US.iso885915
en_US.utf8
Então, eu comentei as seguintes linhas do arquivo postgresql.conf:
#lc_messages = 'en_US.UTF-8' # locale for system error message
# strings
#lc_monetary = 'en_US.UTF-8' # locale for monetary formatting
#lc_numeric = 'en_US.UTF-8' # locale for number formatting
#lc_time = 'en_US.UTF-8' # locale for time formatting
Depois de comentar as linhas conforme acima, o servidor está ficando fixo, mas não consegue acessar o servidor, e está chorando o seguinte erro:
bash-4.1$ psql
psql: FATAL: database locale is incompatible with operating system
DETAIL: The database was initialized with LC_COLLATE "en_US.UTF-8", which is not recognized by setlocale().
HINT: Recreate the database with another locale or install the missing locale.
Agora eu tenho a localidade no sistema que é exigida pelo postgres, e depois também o seu choro. Não sei exatamente onde está o problema.
Observação: esse problema gera reinicialização após o servidor.