سوییچ tکوچک یا table بکاپ گیری تنها از یک جدول
میتوان در اسم جداول از کاراکترهای خاص مثل ستاره برای بکاپ گیری از چندین جدول استفاده کرد مثل person* که از تمام جداولی که با person شروع می شود بکاپ گرفته می شود.
با سوییچ -T یا exclude--tableمشخص می کنیم که از چه جداولی بکاپ گرفته نشود مثل جداول log
pg_dump -t person* db1 > db.sqlسوییچ nکوچک مشخص می کند از چه schema بکاپ گرفته شود و سوییچ N بزرگ مشخص می کند از چه schema بکاپ گرفته نشود.
دستور زیر از تمام schema هایی که با est شروع و با gsm پایان و با west شروع و با gsm ختم شود بکاپ میگیرد به جز schemaهایی که کلمه test دارند.
pg_dump -n 'east*gsm' -n 'west*gsm' -N '*test*' db1 > db.sqlسوییچ دستور زیر با دستور بالا فرقی ندارد فقط به جای اینکه دو schema را به صورت جدا معرفی کند یکجا معرفی کرده است
pg_dump -n '(east|west)*gsm' -N '*test*' db1> db.sqlنکته ای که وجود دارد چون postgres یک دیتابیس case in setive است و به کلمات بزرگ و کوچک حساس است اگر بخواهیم در اسامی جداول یا بانک ها یا هر اسمی که حرف بزرگ دارد استفاده کنیم باید از علامت "\ استفاده کنیم مثل بکاپ گیری زیر چون اسم جدولی که قرار است بکاپ گرفته شود دارای حروف بزرگ است(MixedCaseName) از علامت "\ استفاده شده
pg_dump -t "\"MixedCaseName\"" db1> mytab.sqlاگر فیلترهایی که می خواهیم روی بکاپ بگزاریم زیاد است می توان آن ها را در یک فایل نوشته و با سوییچ filter آن را فراخوانی کرد مثلا از جدول mytable و تمامی جداولی که با table شروع می شوند به غیر از جدول table2 و log و schema test بکاپ گرفته شود. فایلی به نام filte1.txt ایجاد می کنیم که محتویاتش به صورت زیر باشد
include table mytable
include table table *
exclude table table2
exclude table log
exclude schema test
حالا با دستور زیر بکاپ می گیریم
pg_dump --filter=filter.txt db1> db.sqlسوییچ zبزرگ یا compress باعث فشرده سازی بکاپ می شودکه از 0 یعنی بدون فشرده سازی شروع و تا 9
یعنی حداکثر فشرده سازی ادامه دارد
pg_dump -t person* db1 --compress=9 -f db.sql
سوییچ a یا data-only فقط از داده ها بکاپ می گیرد و از ساختار نمی گیرد و بلعکس آن سوییچ s یا schema-only فقط از ساختار بکاپ می گیرد و از داده نمی گیرد.
سوییچ cکوچک یا clean باعث می شود ابتدا فایل بکاپ دستور drop database نیز افزاوده شود تا هنگام restore بانک قبلی را حذف کند و سوییچ Cبزرگ یا create باعث می شود ابتدای فایل بکاپ دستور create database افزوده شود تا هنگام بازگردانی بانک ابتدا ساخته شود و سپس بازگردانی داده ها و جداول و دیگر آبجکتها انجام شود.
معمولا سوییچ clear و create یکدیگر انجام می شود.