暂无图片
pg里这个报错如何解决??
我来答
分享
暂无图片 匿名用户
pg里这个报错如何解决??


(postgres@[local]:5432)-[postgres]-#\l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
alvindb | alvin | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
bldemo | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
mydb | pguser | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =Tc/pguser +
| | | | | pguser=C*T*c*/pguser
mydb1 | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
postgres | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
template0 | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
test | admin | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
(8 rows)

(postgres@[local]:5432)-[postgres]-#\c mydb1
FATAL: database "mydb1" does not exist
DETAIL: The database subdirectory "base/32482" is missing.
Previous connection kept

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
李先生

1、在数据库里面查看mydb1数据库的oid

select * from pg_database where datname = 'mydb1';

可以看到oid应该为32482

2、在$PGDATA下查看base/32482是否存在,看报错是由于该文件夹miss。

考虑从备份中恢复mydb1数据库吧

暂无图片 评论
暂无图片 有用 0
nanjing_2013

对,是这个问题,我是用pg_rman恢复的增量备份,全库备份恢复没问题,用增量恢复就不行

暂无图片 评论
暂无图片 有用 0
李先生
2022-03-04
注意pg的timelines时间线,全备恢复之后数据库运行,时间线已经变了,所以再使用增量恢复就会报错。
nanjing_2013

pg_rman的增量恢复到底是个啥原理?一直没搞明白


我如果增量恢复到底是啥步骤呢?、

我如果不进行全备恢复,只进行增量恢复,恢复后,表里啥数据都没有,明显不对

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏