ฉันใช้ PostgreSQL 9.1 และต้องการกู้คืนไฟล์สำรองที่สร้างด้วยpg_dump
:
sudo pg_dump -h 127.0.0.1 -U postgres --clean --inserts -E UTF8 -f out.sql database_name
คำสั่งนี้สร้างไฟล์ sql ที่ถูกต้องที่เริ่มต้นด้วยการปล่อยวัตถุฐานข้อมูลใด ๆ ที่มีอยู่จากนั้นสร้างตารางทั้งหมดบ่งบอกลำดับและอื่น ๆ และในที่สุดก็แทรกข้อมูล
เมื่อฉันพยายามกู้คืนไฟล์สำรองที่สร้างด้วย: (เพิ่มตัวแบ่งบรรทัดเพื่อวัตถุประสงค์ในการแสดงผลเท่านั้น)
sudo pg_restore
-d database_name -h 127.0.0.1 -U postgres
--format=c --clean --create out.sql
มันล้มเหลวและพิมพ์:
pg_restore: [archiver] did not find magic string in file header
อะไรคือเหตุผลสำหรับสิ่งนั้น?