You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL 15.4误删information_schema后如何重建该模式?

恢复PostgreSQL 15.4中误删的information_schema模式

information_schema是PostgreSQL内置的虚拟模式,由一系列依赖系统目录的视图组成——你删除的只是这些视图,底层系统表并未丢失。以下是可靠的重建方法:

方法1:从同版本正常实例导出并导入视图定义

所有同版本的PostgreSQL实例中,information_schema的结构完全一致,可从正常实例导出结构后导入故障实例:

  • 在正常的PostgreSQL 15.4实例上执行导出命令:
    pg_dump -s -n information_schema -f info_schema_recover.sql 目标数据库名
    
    参数说明:-s仅导出结构,-n指定要导出的模式,-f指定输出文件。
  • 将导出的info_schema_recover.sql传输到故障服务器,以超级用户(如postgres)身份执行导入:
    psql -d 目标数据库名 -U postgres -f info_schema_recover.sql
    

方法2:使用官方系统脚本重建

PostgreSQL安装包自带重建information_schema的脚本,可直接使用:

  1. 找到同版本PostgreSQL安装路径下的information_schema.sql文件(通常位于share/postgresql目录);若本地找不到,可从PostgreSQL 15.4的官方源码分支中获取对应文件。
  2. 以超级用户身份执行脚本:
psql -d 目标数据库名 -U postgres -f information_schema.sql

关键注意事项

  • 操作前必须备份当前数据库,防止二次故障。
  • 必须使用与当前实例完全相同版本的脚本或导出文件,不同版本的information_schema结构存在差异。
  • 所有操作需要超级用户权限,普通用户无法重建系统模式。

内容的提问来源于stack exchange,提问作者puio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 19:29:51