免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7787 | 回复: 8
打印 上一主题 下一主题

数据库服务器断电重启异常 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-08-17 09:27 |只看该作者 |倒序浏览
Caused by: org.postgresql.util.PSQLException: ERROR: invalid page header in block 583 of relation "bodycontent"
        at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:154
        at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1316)
        at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:191)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:351)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:255)
        at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76)
        at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:89)

我估计是文件系统坏掉了,数据库没有备份,怎么恢复呢?

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
2 [报告]
发表于 2011-08-17 11:51 |只看该作者
数据库启动了嘛?看样子是数据文件怀了啊。

论坛徽章:
0
3 [报告]
发表于 2011-08-17 12:01 |只看该作者
数据能启动啊,就是访问个别的表不行。备份库也不行呢。感觉postgresql 库太脆弱了

论坛徽章:
4
丑牛
日期:2014-09-15 09:28:12双子座
日期:2014-12-19 17:01:192015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-06-28 06:20:00
4 [报告]
发表于 2011-08-18 09:08 |只看该作者
本帖最后由 tanfeng3 于 2011-08-18 09:11 编辑
数据能启动啊,就是访问个别的表不行。备份库也不行呢。感觉postgresql 库太脆弱了
sdyjmc 发表于 2011-08-17 12:01



    断电重启 ,其它类型的库也可能文件异常,包括 oracle ,
从上面看应该是一张表里的部分数据损坏了;

处理方法,可以参考一个贴;
http://stackoverflow.com/questio ... ess/6896119#6896119

论坛徽章:
0
5 [报告]
发表于 2011-08-22 19:39 |只看该作者
断电重启 ,其它类型的库也可能文件异常,包括 oracle ,
从上面看应该是一张表里的部分数据损坏 ...
tanfeng3 发表于 2011-08-18 09:08

这位同学,oracle也会吗?
重启时,oracle应该可以自动检测出断电重启,然后进行事务回滚或者重做吧?

论坛徽章:
4
丑牛
日期:2014-09-15 09:28:12双子座
日期:2014-12-19 17:01:192015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-06-28 06:20:00
6 [报告]
发表于 2011-08-22 20:41 |只看该作者
本帖最后由 tanfeng3 于 2011-08-22 20:49 编辑
这位同学,oracle也会吗?
重启时,oracle应该可以自动检测出断电重启,然后进行事务回滚或者重做吧?
johnsonshu 发表于 2011-08-22 19:39



oracle 有 redo , 就能保证断电的时候所有的数据块都被正常写入了吗?
一个oracle 生产库断电后,你能保证数据库 100% 能再次启来么?
你能 100% 保证数据都没有丢失么?

oracle 有 redo , PostgreSQL 有 WAL LOG ,原理是类似的。

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
7 [报告]
发表于 2011-08-22 21:58 |只看该作者
希望楼主能配置好。

论坛徽章:
0
8 [报告]
发表于 2011-08-23 03:19 |只看该作者
oracle 有 redo , 就能保证断电的时候所有的数据块都被正常写入了吗?
一个oracle 生产库断电后, ...
tanfeng3 发表于 2011-08-22 20:41


那银行之类的系统,发生事故之后,需要对所有数据块进行测试,以防有坏数据的发生?

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
9 [报告]
发表于 2011-08-23 11:58 |只看该作者
银行的系统基本没用PG的啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP