我为这篇长篇大论道歉。我有一个在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命令创建的文件。
答案 0 :(得分:0)