I'm not sure why we are focused on the other errors - the database fails to get dropped (or created), so future errors are to be expected.
pg_restore should be run with the --exit-on-error flag, and handle the errors one by one as someone mentioned upthread. I would use the --section=pre-data --section=data and --section=post-data flags to pg_dump to create (for the pre-data) a small and editable file so you can tweak the CREATE DATABASE as you please. pg_dump mydb --clean --create --section=pre-data --file=mydb.pre.pg Cheers, Greg -- Crunchy Data - https://www.crunchydata.com Enterprise Postgres Software Products & Tech Support