创建数据库后,我通过脚本使用.backup文件在此空白/新数据库上恢复 PostgreSQL 8.4 中的数据库(具有适当的错误处理)。如果发生任何错误,则脚本会中止整个过程并将该过程标记为失败。在数据库还原期间会生成以下错误:
pg_restore: connecting to database for restore
pg_restore: creating SCHEMA public
pg_restore: creating COMMENT SCHEMA public
pg_restore: creating PROCEDURAL LANGUAGE plpgsql
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 302; 2612 16386 PROCEDURAL LANGUAGE plpgsql postgres
pg_restore: [archiver (db)] could not execute query: ERROR: language "plpgsql" already exists
Command was:
CREATE PROCEDURAL LANGUAGE plpgsql;
pg_restore: setting owner and privileges for SCHEMA public
pg_restore: setting owner and privileges for COMMENT SCHEMA public
pg_restore: setting owner and privileges for ACL public
pg_restore: setting owner and privileges for PROCEDURAL LANGUAGE plpgsql
WARNING: errors ignored on restore: 1
Exit code : 1
我知道,这个错误在PostgreSQL 8.x中应该被忽略,但是由于我是通过脚本执行的,所以这个问题需要解决,即PostgreSQL的退出代码应该为0,否则整个过程将无法完成.
知道怎么做吗?