pg_dump
pg_dump بکاپ سازگار و بدون قفل از یک دیتابیس در حال کار میگیرد. فرمت custom (-Fc) بهترین انتخاب عمومی است چون فشرده است و با pg_restore میتوان فقط بخشی از آن را بازگرداند.
ساختار دستور
pg_dump [options] db_name > backup.sqlنمونههای کاربردی
pg_dump -U postgres appdb > appdb.sqlبکاپ متنی SQL
pg_dump -U postgres -Fc appdb > appdb.dumpفرمت custom: فشرده و قابل ریستور انتخابی
pg_dump -U postgres -Fd -j 4 appdb -f /backups/appdb_dirفرمت directory با ۴ رشتهٔ موازی برای دیتابیس بزرگ
pg_dump -U postgres -t users appdb > users.sqlبکاپ فقط یک جدول
pg_dump -U postgres -s appdb > schema.sqlفقط ساختار
pg_dump -U postgres appdb | gzip > appdb_$(date +%F).sql.gzبکاپ فشردهٔ تاریخدار
pg_dump -h 10.0.0.5 -U app -d appdb -Fc -f appdb.dumpبکاپ از سرور راه دور
آپشنهای مهم
-Fc- فرمت custom (فشرده)
-Fd- فرمت directory (قابل موازیسازی)
-Fp- متن ساده SQL
-j- تعداد رشتهٔ موازی (با -Fd)
-t- فقط جدول مشخص
-n- فقط schema مشخص
-s- فقط ساختار
-a- فقط داده
--no-owner- حذف مالک اشیاء برای ریستور روی کاربر دیگر
-c- افزودن DROP پیش از CREATE