我刚刚这样做了:
my_db=> \c postgres
postgres=> alter table my_db rename to my_db_27032011;
ALTER DATABASE
postgres=> create database my_db
CREATE DATABASE
postgres=> \i my_fixed_db_schema.sql
CREATE TABLE
ALTER TABLE
INSERT
INSERT
....
postgres=>
看到错误?如果my_db很小,那就没问题了,但事实并非如此 - 它超过了一千个表,并且在整个地方都有约束和触发器。
有关如何撤消此问题的任何线索?我没有对postgres数据库本身进行备份,因为嗯,什么样的白痴会破坏它?
它可能不会影响日常运行,因为实际的postgres表(可能)完好无损。它只是凌乱而且我想修复它,但不需要重新安装整个服务器。