PS. 查询\nebula_boh\logs\BOHInterfaceLog.log 日志,
一般数据库文件损坏的日志 有 “UncategorizedSQLException” 或 “zero page at block”  或 “invalid page header” 关键字ERROR

说明postgresql数据库文件存在损坏,根据日志建议的修复方法 ,
修复损坏的表或者索引,如果修复失败 则考虑重装数据库了

1、表损坏修复(分开一个一个的执行)
set zero_damaged_pages = on; --当这个参数为on的时候,会忽略所有数据有损坏的页面
vacuum full 损坏数据表表名;
reindex table 损坏数据表表名;

2、索引损坏修复
REINDEX INDEX 索引名称 ; --修复损坏的表索引

产生原因:
--------------------------------------------
索引崩溃,并且不再包含有效的数据。尽管理论上这是不可能发生的,但实际上索引会因为软件毛病或者硬件问题而崩溃。REINDEX 提供了一个恢复方法。
索引变得"臃肿",包含大量的空页或接近空页。这个问题在某些罕见访问模式时会发生在 B-tree 索引上。REINDEX 通过写一个不带无用索引页的新索引提供了缩小索引空间消耗的途径。

样例:
2019-01-29 10:03:46.145 [pool-8-thread-1] - [ERROR] com.tzx.service.impl.CCOrder2BOHServiceImpl(:389) 门店接收订单异常:org.springframework.jdbc.UncategorizedSQLException: StatementCallback; uncategorized SQLException for SQL [...]; SQL state [XX002]; error code [0]; ERROR: index "index_yddxm2_destineid" contains unexpected zero page at block 0
建议:Please REINDEX it.; nested exception is org.postgresql.util.PSQLException: ERROR: index "index_yddxm2_destineid" contains unexpected zero page at block 0
建议:Please REINDEX it.

修复:
REINDEX INDEX index_yddxm2_destineid;

3、表索引查询
select * from pg_indexes where tablename='表名';
或 select * from pg_statio_all_indexes where relname='表名';

Postgresql 数据库错误修复v0.1的更多相关文章

  1. CodeSmith7代码生成器针对PostgreSQL数据库无法使用的Bug修复全过程

    前言 最近公司需要将原来使用的MSSQL数据库整体迁移至pgsql,需要使用CodeSmith生成IBatisNet的配置文件.按照提示安装了Npgsql.dll后依然无法使用.引发了本次通过反编译修 ...

  2. sql2005数据库置疑修复断电崩溃索引损坏 数据库索引错误修复/数据库表损坏/索引损坏/系统表混乱等问题修复

    sql2005数据库置疑修复断电崩溃索引损坏 数据库索引错误修复/数据库表损坏/索引损坏/系统表混乱等问题修复 客 户 名 称 济南某电子商务公司 数 据 类 型 SQL2005数据库 故 障 检 测 ...

  3. TPC-H生成.tbl文件导入postgresql数据库的坑

    数据库project好好的不用主流的MySQL和Microsoft server而要求用听都没听过的postgresql (当然,可能你三个都没听过) 这里的坑主要是把生成的那八张.tbl的表导入pg ...

  4. PostgreSQL介绍以及如何开发框架中使用PostgreSQL数据库

    最近准备下PostgreSQL数据库开发的相关知识,本文把总结的PPT内容通过博客记录分享,本随笔的主要内容是介绍PostgreSQL数据库的基础信息,以及如何在我们的开发框架中使用PostgreSQ ...

  5. PowerDesigner反向工程PostgreSQL数据库

    1. 环境准备: a)         安装PowerDesigner,以PowerDesigner15.1为例 b)         安装java jdk,以jdk-7-windows-i586为例 ...

  6. C#访问PostGreSQL数据库的方法 http://www.jb51.net/article/35643.htm

    这次的项目中的一个环节要求我把PostGreSQL数据取出来,然后放到SqlServer里,再去处理分析. http://www.jb51.net/article/35643.htm - 我对Post ...

  7. openerp安装记录及postgresql数据库问题解决

    ubuntu-14.04下openerp安装记录1.安装PostgreSQL 数据库    a.安装         sudo apt-get install postgresql    安装后ubu ...

  8. postgresql数据库的数据导出

    一.pg_dump的用法:数据库的导入导出是最常用的功能之一,每种数据库都提供有这方面的工具,例如Oracle的exp/imp,Informix的dbexp/dbimp,MySQL的mysqldump ...

  9. Microsoft SQL Server 数据库 错误号大全

    panchzh :Microsoft SQL Server 数据库 错误号大全0 操作成功完成. 1 功能错误. 2 系统找不到指定的文件. 3 系统找不到指定的路径. 4 系统无法打开文件. 5 拒 ...

随机推荐

  1. 微软必应Bing搜索引擎这几天无法访问!

    一.用必应(Bing)临时域名: www2.bing.com 或者 www4.bing.com 临时域名博主验证有效 二.修改hosts文件: 用户只需要暂时修改下host然后坐等微软服务器恢复后再删 ...

  2. Linux(centos)下安装JDK

    安装 JDK是运行java程序必不可少的环境,服务器上跑程序也不例外.首先在安装之前,要知道Linux下安装软件有两种,一种是使用yum等命令直接下载,一种是使用上传下载工具,上传至Linux下使用, ...

  3. ROS零门槛学渣教程系列(二)——Linux常用指令:mkdir、tar、 unzip、cp、scp、mv、rm、find、apt、ssh

    Linux常用指令通过上一教程,我们获得了ubuntu系统.Linux是一个很大的领域.但不要紧张,我们一步步来就是了,跟着教程,需要能用到新知识,会提前介绍给大家.下面学习几个常用的Linux指令. ...

  4. VMware 中安装KVM,模块不加载

    # yum -y install qemu-kvm libvirt virt-install bridge-utils 通过以上命令在VMWare中centos7安装KVM模块 安装后使用 #lsmo ...

  5. 7A - Max Sum

    Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. F ...

  6. centos 7 常用工具篇

    1.vmstat监控linux整体性能工具如查看命令:vmstat 1 4 2.用netstat查看网络连接,接口等信息如:netstat -an 3.dig  或者nslookup 跟踪yum解析过 ...

  7. 201621123002《Java程序设计》第十一周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1. 源代码阅读:多线程程序BounceThread 1.1 BallR ...

  8. [ES]elasticsearch章5 ES的分词(一)

    初次接触 Elasticsearch 的同学经常会遇到分词相关的难题,比如如下这些场景: 1.为什么明明有包含搜索关键词的文档,但结果里面就没有相关文档呢? 2.我存进去的文档到底被分成哪些词(ter ...

  9. beamer插入图片的一些技巧

    1. 点一下,让另一张隐藏的图出现

  10. 《修炼之道:.NET开发要点精讲》读书笔记(二)

    1.简述.NET中CTS.CLS以及CLR的含义与作用. A:CTS指公共类型系统,是.NET平台中各种语言必须遵守的类型规范:CLS指公共语言规范,是.NET平台中各种语言必须遵守的语言规范:CLR ...