Sea*_*ton 4 postgresql disaster-recovery
我有一个 PostgreSQL 8.3 数据目录备份。我需要将此备份中的数据库复制到新的 PostgreSQL 实例中。由于旧服务器的问题,我无法对数据库进行 pg_dump。
我已经弄清楚哪个目录是有问题的数据库。例如,在 MySQL 中,您通常要做的就是关闭服务器,复制目录并重新启动它,数据库将可用。现在这不适用于 PostgreSQL,我怀疑这是因为该数据库未在 global/pg_database 文件中列出。这个文件似乎是在 PostgreSQL 启动时自动生成的,所以我如何告诉系统数据库在那里?
Ber*_*aug 16
请注意,在 PostgreSQL 中,您的集群数据目录是一个独立的单元,无法按照此处的文档可靠地分段恢复。
您最好的希望是使用旧服务器的完整数据目录并在其上启动服务器,然后从您从那里获得的数据库转储中恢复:
须藤 -u postgres postgres -D old_data_directory或与苏:
su postgres postgres -D old_data_directory
sudo -u postgres pg_dump -p /path/to/socket/for/old/directory database_name > dump_file.sql与上面类似的 su 成为 postgres
sudo -u postgres psql -p /path/to/socket/for/new/directory new_database_name再一次,使用类似于上面的 su 获得 postgres 权限
这应该能让你做好准备,或者至少展示一条通往那里的好途径。
归档时间: |
|
查看次数: |
9585 次 |
最近记录: |