F.40. pgpro_bindump
pgpro_bindump â ÑÑо плагин, пÑедоÑÑавлÑÑÑий дополниÑелÑнÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð´Ð»Ñ Ð¿ÑоÑокола ÑепликаÑии Postgres Pro, в ÑаÑÑноÑÑи Ð´Ð»Ñ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ ÑÑилиÑой pg_probackup3. pgpro_bindump Ð¸Ð¼ÐµÐµÑ ÑледÑÑÑие пÑеимÑÑеÑÑва:
УпÑоÑÑÐ½Ð½Ð°Ñ ÑвÑÐ·Ñ Ñ ÑеÑвеÑом. ÐÐ»Ñ Ð¿Ð¾Ð´ÐºÐ»ÑÑÐµÐ½Ð¸Ñ Ðº ÑеÑвеÑÑ Ð±Ð°Ð· даннÑÑ pgpro_bindump не ÑÑебÑÐµÑ Ð¿ÑоÑокола SSH и ÑвÑзаннÑÑ Ñ Ð½Ð¸Ð¼ наÑÑÑоек.
ÐнÑегÑиÑÐ¾Ð²Ð°Ð½Ð½Ð°Ñ Ð¿ÐµÑедаÑа WAL. Ð¤Ð°Ð¹Ð»Ñ WAL пеÑедаÑÑÑÑ Ð²Ð¼ÐµÑÑе Ñ Ñайлами даннÑÑ , ÑÑо ÑÐ½Ð¸Ð¶Ð°ÐµÑ ÑиÑк поÑеÑи инÑоÑмаÑии пÑи ÑезеÑвном копиÑовании.
ÐпÑимизиÑованное Ñ Ñанение. Ð¤Ð°Ð¹Ð»Ñ ÐºÐ¾Ð¿Ð¸ÑÑÑÑÑÑ Ð½Ðµ в иÑÑ Ð¾Ð´Ð½Ð¾Ð¼ виде, а аÑÑ Ð¸Ð²Ð¸ÑÑÑÑÑÑ Ð² ÑобÑÑвенном ÑоÑмаÑе pg_probackup3 â
CBOR(RFC 8949 Concise Binary Object Representation, СжаÑое пÑедÑÑавление двоиÑнÑÑ Ð¾Ð±ÑекÑов), ÑÑо повÑÑÐ°ÐµÑ ÑÑÑекÑивноÑÑÑ Ñ ÑанениÑ.
F.40.1. ÐÑÑ Ð¸ÑекÑÑÑа
ÐлÑÑевÑе оÑобенноÑÑи ÑабоÑÑ pgpro_bindump:
ÐÐ»Ñ Ð¾Ð±ÑабоÑки подклÑÑений Ð¾Ñ Ð²Ð½ÐµÑÐ½Ð¸Ñ Ð¿Ñиложений ÑоздаÑÑÑÑ Ð²ÑделеннÑй обÑлÑживаÑÑий пÑоÑеÑÑ. ÐÐ»Ñ Ð¾ÑпÑавки запÑоÑов к ÑÑÐ¾Ð¼Ñ Ð¿ÑоÑеÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ иÑполÑзоваÑÑ ÑÑилиÑÑ pg_probackup3 или ÑобÑÑвенное пÑиложение.
ÐÑи Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи можно ÑÑÑанавливаÑÑ Ð½ÐµÑколÑко Ñоединений Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ пÑиложениÑ.
ÐоÑколÑÐºÑ Ð¿Ð»Ð°Ð³Ð¸Ð½ pgpro_bindump Ð¸Ð¼ÐµÐµÑ Ð¿ÑÑмой доÑÑÑп к Ñайлам Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , дополниÑелÑнÑÑ ÑазÑеÑений не ÑÑебÑеÑÑÑ.
ÐÑиложение pgpro_bindump иÑполÑзÑÐµÑ Ð±Ð¸Ð±Ð»Ð¸Ð¾ÑÐµÐºÑ libpgprobackup вмеÑÑе Ñо вÑÑÑоеннÑм модÑлем кодиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð»Ñ Ð¿ÐµÑедаÑи даннÑÑ Ð² пÑиложение.
ÐаÑамеÑÑ ÐºÐ¾Ð½ÑигÑÑаÑии
walsender_plugin_librariesÑпÑоÑÐ°ÐµÑ Ð¿ÑоÑеÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ иÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²ÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´ ÑепликаÑии, вклÑÑÐ°Ñ Ð¿Ð¾Ð»ÑзоваÑелÑÑкие.
F.40.2. ÐгÑаниÑÐµÐ½Ð¸Ñ Ð¸ ÑÑебованиÑ
РнаÑÑоÑÑее вÑÐµÐ¼Ñ pgpro_bindump Ð¸Ð¼ÐµÐµÑ ÑледÑÑÑие огÑаниÑÐµÐ½Ð¸Ñ Ð¸ ÑÑебованиÑ:
ÐÐ»Ñ ÑабоÑÑ pgpro_bindump ÑÑебÑÑÑÑÑ
libpgprobackup.soиlibpb3_encoder.so.
F.40.3. УÑÑановка и наÑÑÑойка
Ðлагин pgpro_bindump вÑ
Ð¾Ð´Ð¸Ñ Ð² ÑоÑÑав Postgres Pro как ÑаÑÑÑ Ð¿Ð°ÐºÐµÑа postgrespro-std-14-contrib (подÑобнÑе инÑÑÑÑкÑии по ÑÑÑановке пÑÐ¸Ð²ÐµÐ´ÐµÐ½Ñ Ð² Ðлаве 16). ÐоÑле ÑÑÑановки Postgres Pro вÑполниÑе Ñаги ниже.
ÐадайÑе ÑледÑÑÑие паÑамеÑÑÑ Ð² Ñайле
postgresql.conf:shared_preload_libraries = 'pgpro_bindump' wal_level = 'replica' # or 'logical' walsender_plugin_libraries = 'pgpro_bindump'
ÐеÑезапÑÑÑиÑе ÑкземплÑÑ Postgres Pro.
ÐÑимеÑание
ÐоÑколÑÐºÑ pgpro_bindump ÑвлÑеÑÑÑ Ð¿Ð»Ð°Ð³Ð¸Ð½Ð¾Ð¼, а не ÑаÑÑиÑением, команда CREATE EXTENSION не ÑÑебÑеÑÑÑ.
F.40.4. ÐÐ¾Ð¼Ð°Ð½Ð´Ñ ÑепликаÑии
Ðлагин pgpro_bindump поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÑледÑÑÑие ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ÑепликаÑии:
just-noopâ команда-заглÑÑка, не вÑполнÑÑÑÐ°Ñ Ð½Ð¸ÐºÐ°ÐºÐ¸Ñ Ð´ÐµÐ¹ÑÑвий.start_backupâ запÑÑÐºÐ°ÐµÑ Ð¿ÑоÑеÑÑ ÑезеÑвного копиÑованиÑ.copy_filesâ копиÑÑÐµÑ ÑÐ°Ð¹Ð»Ñ Ð² ÑоÑмаÑеCBOR.stop_backupâ оÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ Ð¿ÑоÑеÑÑ ÑезеÑвного копиÑованиÑ.
РезеÑвное копиÑование вÑполнÑеÑÑÑ Ð² Ñежиме PRO â ÑаÑÑиÑенном Ñежиме иÑÑоÑника даннÑÑ ÑезеÑвного копиÑованиÑ, вклÑÑаÑÑем вÑе доÑÑÑпнÑе опÑимизаÑии и ÑлÑÑÑениÑ, в Ñом ÑиÑле пÑопÑиеÑаÑнÑй пÑоÑокол ÑепликаÑии и ÑпеÑиализиÑованнÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ÑепликаÑии.
ÐÐ»Ñ Ð¾ÑпÑавки команд из полÑзоваÑелÑÑкого пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð² pgpro_bindump и полÑÑÐµÐ½Ð¸Ñ Ð¿Ñиложением вÑÑ Ð¾Ð´Ð½ÑÑ Ð´Ð°Ð½Ð½ÑÑ Ð¸Ð· pgpro_bindump иÑполÑзÑйÑе libpq.
ÐÑимеÑание
ÐÐ»Ñ ÑабоÑÑ ÑÑебÑеÑÑÑ Ð°ÐºÑивное подклÑÑение к ÑабоÑаÑÑÐµÐ¼Ñ ÑеÑвеÑÑ Postgres Pro.
F.40.4.1. start_backup
start_backup LABELмеÑка, INCR_MODEинкÑеменÑалÑнÑй_Ñежим, START_LSNнаÑалÑнÑй_lsn, TRANSFER_MODEÑежим_пеÑедаÑи, [TRANSFER_BUFFER_SIZEÑазмеÑ_бÑÑеÑа]
ÐапÑÑÐºÐ°ÐµÑ Ð¿ÑоÑеÑÑ ÑезеÑвного копиÑованиÑ. ÐеÑедаÑÑ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ÑледÑÑÑие даннÑе:
start_lsnâ LSN на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ñала ÑезеÑвного копиÑованиÑ.start_tliâ иденÑиÑикаÑÐ¾Ñ Ð»Ð¸Ð½Ð¸Ð¸ вÑемени на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ñала ÑезеÑвного копиÑованиÑ.min_xidâ минималÑнÑй иденÑиÑикаÑÐ¾Ñ ÑÑанзакÑии на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ñала ÑезеÑвного копиÑованиÑ.min_multixactâ минималÑнÑй иденÑиÑикаÑÐ¾Ñ Ð¼ÑлÑÑиÑÑанзакÑии на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ñала ÑезеÑвного копиÑованиÑ.tablespace_listâ ÑпиÑок ÑаблиÑнÑÑ Ð¿ÑоÑÑÑанÑÑв, вклÑÑÑннÑÑ Ð² ÑезеÑвнÑÑ ÐºÐ¾Ð¿Ð¸Ñ.database_listâ ÑпиÑок баз даннÑÑ , вклÑÑÑннÑÑ Ð² ÑезеÑвнÑÑ ÐºÐ¾Ð¿Ð¸Ñ.
LABELмеÑкаÐÐ¼Ñ ÑезеÑвной копии.
INCR_MODEинкÑеменÑалÑнÑй_ÑежимТип инкÑеменÑалÑного копиÑованиÑ. ÐопÑÑÑимÑе знаÑениÑ:
PTRACK,DELTA.START_LSNнаÑалÑнÑй_lsnÐнаÑение Ñипа
XLogRecPtr, пÑедÑÑавлÑÑÑее LSN на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ñала ÑезеÑвного копиÑованиÑ.TRANSFER_MODEÑежим_пеÑедаÑиСпоÑоб пеÑедаÑи даннÑÑ Ñ ÑеÑвеÑа в пÑиложение. ÐозможнÑе знаÑениÑ:
rawâ даннÑе пеÑедаÑÑÑÑ Ð² неÑжаÑом виде блоками пÑоизволÑного ÑазмеÑа.packedâ даннÑе пеÑедаÑÑÑÑ Ð² Ñпакованном виде блоками по 128 ÐÐ Ñ Ð¾Ð±Ñим заголовком.
packedâ знаÑение по ÑмолÑаниÑ.TRANSFER_BUFFER_SIZEÑазмеÑ_бÑÑеÑаЧиÑловое знаÑение, опÑеделÑÑÑее ÑÐ°Ð·Ð¼ÐµÑ Ð±ÑÑеÑа. ÐдинÑÑвенное возможное знаÑение â знаÑение по ÑмолÑаниÑ: 131072 (128 ÐÐ).
F.40.4.2. copy_files
copy_files VERIFY_CHECKSUMS [TRUE | FALSE], COMPRESS_ALGалгоÑиÑм_ÑжаÑиÑ, COMPRESS_LVLÑÑовенÑ_ÑжаÑиÑ, TRANSFER_MODEÑежим_пеÑедаÑи, [INCR_MODEинкÑеменÑалÑнÑй_Ñежим], [START_LSNнаÑалÑнÑй_lsn], [TRANSFER_BUFFER_SIZEÑазмеÑ_бÑÑеÑа], [WORKER_INFOÑиÑло_пÑоÑеÑÑов:ид_пÑоÑеÑÑа]
ÐеÑедаÑÑ Ð±Ð»Ð¾ÐºÐ¸ Ñайлов даннÑÑ
и Ñайлов WAL, ÑпакованнÑе в ÑоÑмаÑе CBOR.
VERIFY_CHECKSUMSÐогиÑеÑкое знаÑение (
trueилиfalse), опÑеделÑÑÑее Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑÑ Ð¿ÑовеÑки конÑÑолÑнÑÑ ÑÑмм.COMPRESS_ALGалгоÑиÑм_ÑжаÑиÑÐÑполÑзÑемÑй алгоÑиÑм ÑжаÑиÑ. ÐопÑÑÑимÑе знаÑениÑ:
zlib,zstd,lz4,none.COMPRESS_LVLÑÑовенÑ_ÑжаÑиÑУÑÐ¾Ð²ÐµÐ½Ñ ÑжаÑиÑ. ÐозможнÑе знаÑениÑ: 1, 2, 3, 4, 5.
TRANSFER_MODEÑежим_пеÑедаÑиСпоÑоб пеÑедаÑи даннÑÑ Ñ ÑеÑвеÑа в пÑиложение. ÐозможнÑе знаÑениÑ:
rawâ даннÑе пеÑедаÑÑÑÑ Ð² неÑжаÑом виде блоками пÑоизволÑного ÑазмеÑа.packedâ даннÑе пеÑедаÑÑÑÑ Ð² Ñпакованном виде блоками по 128 ÐÐ Ñ Ð¾Ð±Ñим заголовком.
packedâ знаÑение по ÑмолÑаниÑ.INCR_MODEинкÑеменÑалÑнÑй_ÑежимТип инкÑеменÑалÑного копиÑованиÑ. ÐопÑÑÑимÑе знаÑениÑ:
PTRACK,DELTA.START_LSNнаÑалÑнÑй_lsnÐнаÑение Ñипа
XLogRecPtr, пÑедÑÑавлÑÑÑее LSN на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ñала ÑезеÑвного копиÑованиÑ.TRANSFER_BUFFER_SIZEÑазмеÑ_бÑÑеÑаЧиÑловое знаÑение, опÑеделÑÑÑее ÑÐ°Ð·Ð¼ÐµÑ Ð±ÑÑеÑа. ÐдинÑÑвенное возможное знаÑение â знаÑение по ÑмолÑаниÑ: 131072 (128 ÐÐ).
WORKER_INFOÑиÑло_пÑоÑеÑÑов:ид_пÑоÑеÑÑаÐолиÑеÑÑво пÑоÑеÑÑов и иденÑиÑикаÑÐ¾Ñ Ð¿ÑоÑеÑÑоÑа.
F.40.4.3. stop_backup
stop_backup STREAM [TRUE | FALSE], COMPRESS_ALGалгоÑиÑм_ÑжаÑиÑ, COMPRESS_LVLÑÑовенÑ_ÑжаÑиÑ, [EXTERNALSвнеÑние_каÑалоги] [TRANSFER_BUFFER_SIZEÑазмеÑ_бÑÑеÑа], [TRANSFER_MODEÑежим_пеÑедаÑи]
ÐавеÑÑÐ°ÐµÑ Ð¿ÑоÑеÑÑ ÐºÐ¾Ð¿Ð¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ закÑÑÐ²Ð°ÐµÑ ÑекÑÑее Ñоединение. ÐÑпÑавлÑÐµÑ Ð² пÑиложение ÑледÑÑÑие даннÑе:
stop_lsnâ LSN на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑезеÑвного копиÑованиÑ.stop_tliâ иденÑиÑикаÑÐ¾Ñ Ð»Ð¸Ð½Ð¸Ð¸ вÑемени на Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑезеÑвного копиÑованиÑ.Файл
backup.control.ÐÐ°Ð±Ð¾Ñ Ñайлов WAL (ÑолÑко пÑи вклÑÑÑнной пеÑедаÑе WAL).
STREAMÐогиÑеÑкое знаÑение (
trueилиfalse), опÑеделÑÑÑее, вклÑÑена ли поÑÐ¾ÐºÐ¾Ð²Ð°Ñ Ð¿ÐµÑедаÑа WAL.COMPRESS_ALGалгоÑиÑм_ÑжаÑиÑÐÑполÑзÑемÑй алгоÑиÑм ÑжаÑиÑ. ÐопÑÑÑимÑе знаÑениÑ:
zlib,zstd,lz4,none.COMPRESS_LVLÑÑовенÑ_ÑжаÑиÑУÑÐ¾Ð²ÐµÐ½Ñ ÑжаÑиÑ. ÐозможнÑе знаÑениÑ: 1, 2, 3, 4, 5.
EXTERNALSвнеÑние_каÑалогиСпиÑок внеÑÐ½Ð¸Ñ ÐºÐ°Ñалогов.
TRANSFER_BUFFER_SIZEÑазмеÑ_бÑÑеÑаЧиÑловое знаÑение, опÑеделÑÑÑее ÑÐ°Ð·Ð¼ÐµÑ Ð±ÑÑеÑа. ÐдинÑÑвенное возможное знаÑение â знаÑение по ÑмолÑаниÑ: 131072 (128 ÐÐ).
TRANSFER_MODEÑежим_пеÑедаÑиСпоÑоб пеÑедаÑи даннÑÑ Ñ ÑеÑвеÑа в пÑиложение. ÐозможнÑе знаÑениÑ:
rawâ даннÑе пеÑедаÑÑÑÑ Ð² неÑжаÑом виде блоками пÑоизволÑного ÑазмеÑа.packedâ даннÑе пеÑедаÑÑÑÑ Ð² Ñпакованном виде блоками по 128 ÐÐ Ñ Ð¾Ð±Ñим заголовком.
packedâ знаÑение по ÑмолÑаниÑ.
F.40.5. ÐвÑоÑÑ
Postgres Professional, ÐоÑква, РоÑÑиÑ.