数据损坏 - 错误:无法打开关系的第2段

时间:2015-10-28 17:53:16

标签: postgresql

我收到生产数据库的以下错误。我是PostgreSQL数据库的新手。我需要帮助才能解决以下错误。

2015-10-28 10:25:04,154 [monitor-thread-pool1-thread-6] ERROR [org.hibernate.util.JDBCExceptionReporter] ERROR: could not open segment 2 of relation 1663/98913/98947 (target block 427542): No such file or
directory



server1=>  select oid::regclass from pg_class where relfilenode =98947;
          oid

 alert_instance_history
(1 row)


server1=>  select oid::regclass from pg_class where relfilenode =98913;
 oid

(0 rows)

server1=> select * from pg_database where oid=1663;
 datname | datdba | encoding | datistemplate | datallowconn | datconnlimit | datlastsysoid | datvacuumxid | datfrozenxid | dattablespace | datconfig | datacl
---------+--------+----------+---------------+--------------+--------------+---------------+--------------+--------------+---------------+-----------+--------
(0 rows)

1. server1=> select version();
                                          version
--------------------------------------------------------------------------------------------
 PostgreSQL 8.1.4 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.3.5 (Debian 1:3.3.5-13)
(1 row)

Q1。错误说2关系,但我只能找到98947,我怎么能检查其他段? Q2。我刚刚在这张表上选择了alert_instance_history,我可以看到这张表中的记录。我需要检查其他任何东西吗?

server1=> select min(eventtimestamp) from alert_instance_history;
  

警告:无法写入1663/98913/98947的第427542条细节:   多次失败---写入错误可能是永久性的。错误:不能   关系1663/98913/98947的开放段2(目标块427542):否   这样的文件或目录语境:写关系的块427542   1663/98913/98947 server1 => server1的=>重新索引表   alert_instance_history;警告:无法写入块427542   1663/98913/98947细节:多次故障---写入错误可能是   常驻。错误:无法打开关系的第2段   1663/98913/98947(目标块427542):没有这样的文件或目录   背景:写作关系1663/98913/98947的块427542

Q3。什么是可靠的选项必须恢复,我可以只恢复一个表吗? 使用pg_dump实用程序完成此数据库的备份。

0 个答案:

没有答案