请帮我解决这个问题。我是postgresql的新手,我犯了大错。我正在使用postgresql 10和逻辑复制。我不知道,但我的服务器今天没有内存,所以我发现pg_wal有很多wal备份。所以我试着找出一种方法并执行这个命令
find $ARCHIVEDIR -type f -mtime +30 -delete
之后我收到错误
无法打开关系映射文件“global / pg_filenode.map”
我无法连接我的数据库。它显示无法连接到服务器:连接被拒绝 服务器是否在主机“172.104.169.169”上运行并接受 端口5432上的TCP / IP连接? 请给我一些解决方案。 提前致谢。 系统 - Ubuntu Postgresql 10
答案 0 :(得分:1)
知道变量ARCHIVEDIR
指向的位置会很有趣。
文件global/pg_filenode.map
是否存在于PostgreSQL数据目录中?
您可能不仅删除了该文件,还删除了其他重要文件。首先,pg_wal
中的文件是重要文件。它们是不是备份,您不应该自己删除它们。
此时您的数据库很可能是吐司,因此您应该从备份中恢复。由于您已设置复制,因此您也可以从副本中获取数据。