我正在 AWS Ubuntu 映像上运行。
为了尝试设置我的机器,我尝试使用 apt-get 来添加和删除 PostgreSql 及其一些模块。
现在,当我运行时sudo apt-get install postgresql-9.3
出现以下错误:
Setting up postgresql-9.3 (9.3.10-0ubuntu0.14.04) ...
update-alternatives: using /usr/share/postgresql/9.3/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode
* Starting PostgreSQL 9.3 database server * Error: could not exec /usr/lib/postgresql/9.3/bin/pg_ctl /usr/lib/postgresql/9.3/bin/pg_ctl start -D /var/lib/postgresql/9.3/main -s -o -c config_file="/etc/postgresql/9.3/main/postgresql.conf" : No such file or directory
唯一缺少的文件/目录是/var/lib/postgresql/9.3/main
我试过:
- 添加目录
- 删除 postgresql
sudo apt-get remove postgresql-9.3
并再次安装
错误仍然发生。
我做错了什么?我该如何解决?
答案1
我的理解是,您在卸载时删除了集群,并且它不会自动重新创建。
重新创建集群应该可以解决问题:
mkdir /var/lib/postgresql/9.3/main
chown postgres /var/lib/postgresql/9.3/main
su postgres
/usr/lib/postgresql/9.3/bin/pg_ctl -D /var/lib/postgresql/9.3/main initdb
您可能需要替换PostgreSQL 的使用在 ubuntu 上使用的数据库用户帐户。
查看 postgres 手册以了解更多信息: http://www.postgresql.org/docs/current/static/creating-cluster.html