이것은 9.3에 있지만 7.x 이후로 발생하는 비슷한 일을 기억할 수 있습니다. 그래서 데이터베이스를 만들고 plpgsql 확장을 설치합니다. 나중에 pg_dump를 만들고 databse로 복원하기 전에 plpgsql 확장명을 가지고 있는지 확인하십시오. 그런 다음 복원 할 때 발생합니다 :
pg_restore: creating EXTENSION plpgsql
pg_restore: creating COMMENT EXTENSION plpgsql
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 2053; 0 0 COMMENT EXTENSION plpgsql
pg_restore: [archiver (db)] could not execute query: ERROR: must be owner of extension plpgsql
Command was: COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';
나는 많은 스크립트를 만들고 있는데 pg_restore가 0을 반환한다는 것이 매우 중요합니다. 따라서 이것을 무시할 수 있다는 사실은 좋지 않습니다. IIRC는 postgres 마스터 사용자로 확장 기능을 만들어야하므로이 EXTENSION 항목이 모두 덤프로 끝나는 이유를 모르겠습니다. 결국, 나는 언어 / 확장의 소유자가 아니냐?
어쨌든, 나는 이것을 제거하는 방법에 대한 제안에 감사드립니다. -l / -L 스위치의 작동 방식을 알고 있습니다. 그러나 이것은 하나의 간단한 확장 주석을 수정하는 데 너무 많은 노력으로 보입니다.