在Amazon ec2 linux上更改postgresql 9.3数据库位置

时间:2014-12-30 21:54:19

标签: postgresql amazon-ec2 postgresql-9.3

我为这篇长篇大论道歉。我有一个在Amazon linux AMI上运行的Postgresql 9.3服务器。我还有一个使用pg_dumpall创建的另一个服务器的压缩转储文件。现在,我想在Postgres中恢复此转储文件中的数据。但是,我想将这些数据加载到特定位置(比如/ data)。

我正在全新安装Postgres。所以,当我尝试做一个:

sudo service postgresql93 start

我收到一条错误消息,要求我初始化数据库。所以我做了一个:

sudo service postgresql initdb

/var/lib/pgsql93/data中创建了所需的文件。之后,我更改了' data_directory' /var/lib/pgsql93/data/postgresql.conf中的配置并将其指向/ data(我必须以root用户身份执行此操作。我无法以默认用户身份打开该文件。)

现在当我尝试做

sudo service postgresql93 start

无法启动,当我检查/var/lib/pgsql93/pg_startup.log文件时,它说:

FATAL:  "/data/postgresql" is not a valid data directory
DETAIL:  File "/data/postgresql/PG_VERSION" is missing.

所以我将文件从默认文件(/var/lib/pgsql9.3/data)复制到/ data,将权限更改为700,将所有者更改为postgres。

但是,当我尝试再次启动服务时,它仍然会失败,而在pgstartup.log中,它只会说:

LOG:  redirecting log output to logging collector process
HINT:  Future log output will appear in directory "pg_log".

当我检查登录/ data / pg_log时,它会说:

LOG:  database system was shut down at 2014-12-30 21:31:18 UTC
LOG:  database system is ready to accept connections
LOG:  autovacuum launcher started

还有什么问题?我还没有恢复数据。我只有initdb命令创建的文件。

1 个答案:

答案 0 :(得分:0)