PostgreSQL - "database server: mainError: could not exec" [Resolvido]
Dica publicada em Linux / Banco de Dados
PostgreSQL - "database server: mainError: could not exec" [Resolvido]
Ao tentar iniciar o Postgres 8.3 no Debian 6, após restaurar um banco pelo backup, me deparei com uma mensagem de erro.
O comando para iniciar o serviço, foi:
# sh /etc/init.d/postgresql start
A mensagem de erro:
Starting PostgreSQL 8.3 database server: mainError: could not exec /usr/lib/postgresql/8.3/bin/pg_ctl /usr/lib/postgresql/8.3/bin/pg_ctl start -D /var/lib/postgresql/8.3/main -l /var/log/postgresql/postgresql-8.3-main.log -s -o -c config_file="/etc/postgresql/8.3/main/postgresql.conf" : ... failed!
Após uma fuçada no Google, descobri como resolver. É necessário alterar o dono dos diretórios do Postgres.
Por isso, os comandos a seguir precisam ser usados:
# chown -R postgres:postgres /etc/postgresql
# chown -R postgres:postgres /usr/share/postgresql
# chown -R postgres:postgres /var/lib/postgresql/
Depois disso, pode tentar iniciar o serviço novamente!
Referência:
O comando para iniciar o serviço, foi:
# sh /etc/init.d/postgresql start
A mensagem de erro:
Starting PostgreSQL 8.3 database server: mainError: could not exec /usr/lib/postgresql/8.3/bin/pg_ctl /usr/lib/postgresql/8.3/bin/pg_ctl start -D /var/lib/postgresql/8.3/main -l /var/log/postgresql/postgresql-8.3-main.log -s -o -c config_file="/etc/postgresql/8.3/main/postgresql.conf" : ... failed!
Após uma fuçada no Google, descobri como resolver. É necessário alterar o dono dos diretórios do Postgres.
Por isso, os comandos a seguir precisam ser usados:
# chown -R postgres:postgres /etc/postgresql
# chown -R postgres:postgres /usr/share/postgresql
# chown -R postgres:postgres /var/lib/postgresql/
Depois disso, pode tentar iniciar o serviço novamente!
Referência: