18.6. РепликаÑиÑ
ÐÑи паÑамеÑÑÑ ÑпÑавлÑÑÑ Ð¿Ð¾Ð²ÐµÐ´ÐµÐ½Ð¸ÐµÐ¼ вÑÑÑоенного Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð° поÑоковой ÑепликаÑии (Ñм. ÐодÑаздел 25.2.5). Ðогда он пÑименÑеÑÑÑ, один ÑеÑÐ²ÐµÑ ÑвлÑеÑÑÑ Ð²ÐµÐ´ÑÑим, а дÑÑгие â ведомÑми. ÐедÑÑий ÑеÑÐ²ÐµÑ Ð²Ñегда пеÑедаÑÑ Ð´Ð°Ð½Ð½Ñе, а ведомÑе вÑегда пÑинимаÑÑ Ð´Ð°Ð½Ð½Ñе ÑепликаÑии, но когда наÑÑÑоена каÑÐºÐ°Ð´Ð½Ð°Ñ ÑепликаÑÐ¸Ñ (Ñм. ÐодÑаздел 25.2.7), ведомÑе ÑеÑвеÑÑ Ñакже могÑÑ Ð±ÑÑÑ Ð¸ пеÑедаÑÑими. ÐолÑÑинÑÑво ÑледÑÑÑÐ¸Ñ Ð¿Ð°ÑамеÑÑов оÑноÑиÑÑÑ Ðº пеÑедаÑÑим и ведомÑм ÑеÑвеÑам, но еÑÑÑ Ð½ÐµÑколÑко паÑамеÑÑов, коÑоÑÑе имеÑÑ ÑмÑÑл ÑолÑко Ð´Ð»Ñ Ð²ÐµÐ´ÑÑего. ÐÑе ÑÑи паÑамеÑÑÑ Ð²Ð¿Ð¾Ð»Ð½Ðµ могÑÑ Ð±ÑÑÑ ÑазнÑми в ÑÐ°Ð¼ÐºÐ°Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ клаÑÑеÑа, еÑли ÑÑо ÑÑебÑеÑÑÑ.
18.6.1. ÐеÑедаÑÑие ÑеÑвеÑÑ
ÐÑи паÑамеÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ задаÑÑ Ð½Ð° лÑбом ÑеÑвеÑе, коÑоÑÑй пеÑедаÑÑ Ð´Ð°Ð½Ð½Ñе ÑепликаÑии Ð¾Ð´Ð½Ð¾Ð¼Ñ Ð¸Ð»Ð¸ неÑколÑким ведомÑм. ÐедÑÑий ÑеÑÐ²ÐµÑ Ð²Ñегда ÑвлÑеÑÑÑ Ð¿ÐµÑедаÑÑим, Ñак ÑÑо на нÑм они Ð´Ð¾Ð»Ð¶Ð½Ñ Ð·Ð°Ð´Ð°Ð²Ð°ÑÑÑÑ Ð²Ñегда. Ð Ð¾Ð»Ñ Ð¸ знаÑение ÑÑÐ¸Ñ Ð¿Ð°ÑамеÑÑов не менÑÑÑÑÑ Ð¿Ð¾Ñле Ñого, как ведомÑй ÑеÑÐ²ÐµÑ ÑÑановиÑÑÑ Ð²ÐµÐ´ÑÑим.
max_wal_senders(integer)ÐадаÑÑ Ð¼Ð°ÐºÑималÑно допÑÑÑимое ÑиÑло одновÑеменнÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑений ведомÑÑ ÑеÑвеÑов или клиенÑов поÑокового копиÑÐ¾Ð²Ð°Ð½Ð¸Ñ (Ñ. е. макÑималÑное колиÑеÑÑво одновÑеменно ÑабоÑаÑÑÐ¸Ñ Ð¿ÑоÑеÑÑов пеÑедаÑи WAL). Ðо ÑмолÑÐ°Ð½Ð¸Ñ ÑÑо знаÑение Ñавно нÑлÑ, Ñо еÑÑÑ ÑепликаÑÐ¸Ñ Ð¾ÑклÑÑаеÑÑÑ. ÐеÑедаÑÑие WAL пÑоÑеÑÑÑ ÑÑиÑÑваÑÑÑÑ Ð² обÑем ÑиÑле Ñоединений, Ñак ÑÑо ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑевÑÑаÑÑ max_connections. Ð ÑлÑÑае неожиданного оÑклÑÑÐµÐ½Ð¸Ñ ÐºÐ»Ð¸ÐµÐ½Ñа поÑоковой пеÑедаÑи ÑÐ»Ð¾Ñ Ð¿Ð¾Ð´ÐºÐ»ÑÑÐµÐ½Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑÑаваÑÑÑÑ Ð·Ð°Ð½ÑÑÑм до доÑÑÐ¸Ð¶ÐµÐ½Ð¸Ñ Ñайм-аÑÑа, Ñак ÑÑо ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ бÑÑÑ Ð½ÐµÐ¼Ð½Ð¾Ð³Ð¾ болÑÑе макÑималÑно допÑÑÑимого ÑиÑла клиенÑов, ÑÑÐ¾Ð±Ñ Ð¾ÑклÑÑивÑиеÑÑ ÐºÐ»Ð¸ÐµÐ½ÑÑ Ð¼Ð¾Ð³Ð»Ð¸ пеÑеподклÑÑиÑÑÑÑ Ð½ÐµÐ¼ÐµÐ´Ð»ÐµÐ½Ð½Ð¾. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко пÑи запÑÑке ÑеÑвеÑа. ЧÑÐ¾Ð±Ñ Ðº Ð´Ð°Ð½Ð½Ð¾Ð¼Ñ ÑеÑвеÑÑ Ð¼Ð¾Ð³Ð»Ð¸ подклÑÑаÑÑÑÑ Ð²ÐµÐ´Ð¾Ð¼Ñе, ÑÑовенÑ
wal_levelдолжен бÑÑÑreplicaили вÑÑе.max_replication_slots(integer)ÐадаÑÑ Ð¼Ð°ÐºÑималÑное ÑиÑло ÑлоÑов ÑепликаÑии (Ñм. ÐодÑаздел 25.2.6), коÑоÑое ÑÐ¼Ð¾Ð¶ÐµÑ Ð¿Ð¾Ð´Ð´ÐµÑживаÑÑ ÑеÑвеÑ. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â нолÑ. ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ задаÑÑ ÑолÑко пÑи запÑÑке ÑеÑвеÑа. ЧÑÐ¾Ð±Ñ ÑÑи ÑлоÑÑ ÑепликаÑии можно бÑло иÑполÑзоваÑÑ, ÑÑовенÑ
wal_levelдолжен бÑÑÑreplicaили вÑÑе. ÐÑли заданное знаÑение данного паÑамеÑÑа бÑÐ´ÐµÑ Ð¼ÐµÐ½ÑÑе, Ñем ÑиÑло Ñже ÑÑÑеÑÑвÑÑÑÐ¸Ñ ÑлоÑов ÑепликаÑии, ÑеÑÐ²ÐµÑ Ð½Ðµ запÑÑÑиÑÑÑ.wal_keep_segments(integer)ÐадаÑÑ Ð¼Ð¸Ð½Ð¸Ð¼Ð°Ð»Ñное ÑиÑло Ñайлов пÑоÑлÑÑ ÑегменÑов жÑÑнала, коÑоÑÑе бÑдÑÑ ÑÐ¾Ñ ÑанÑÑÑÑÑ Ð² каÑалоге
pg_xlog, ÑÑÐ¾Ð±Ñ Ð²ÐµÐ´Ð¾Ð¼Ñй ÑеÑÐ²ÐµÑ Ð¼Ð¾Ð³ вÑбÑаÑÑ Ð¸Ñ Ð¿Ñи поÑоковой ÑепликаÑии. ÐбÑÑно ÑÐµÐ³Ð¼ÐµÐ½Ñ Ð¸Ð¼ÐµÐµÑ ÑÐ°Ð·Ð¼ÐµÑ 16 мегабайÑ. ÐÑли ведомÑй ÑеÑвеÑ, подклÑÑÑннÑй к пеÑедаÑÑемÑ, оÑÑÑаÑÑ Ð±Ð¾Ð»ÑÑе Ñем наwal_keep_segmentsÑегменÑов, пеÑедаÑÑий ÑдалÑÐµÑ ÑегменÑÑ WAL, вÑÑ ÐµÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñе ведомомÑ, и в ÑÑом ÑлÑÑае Ñоединение ÑепликаÑии пÑеÑÑваеÑÑÑ. Ð ÑезÑлÑÑаÑе ÑÑого заÑем Ñакже бÑдÑÑ Ð¿ÑеÑÐ²Ð°Ð½Ñ Ð·Ð°Ð²Ð¸ÑимÑе ÑоединениÑ. (Ðднако ведомÑй ÑеÑÐ²ÐµÑ ÑÐ¼Ð¾Ð¶ÐµÑ Ð²Ð¾ÑÑÑановиÑÑÑÑ, вÑбÑав ÑÑÐ¾Ñ ÑÐµÐ³Ð¼ÐµÐ½Ñ Ð¸Ð· аÑÑ Ð¸Ð²Ð°, еÑли оÑÑÑеÑÑвлÑеÑÑÑ Ð°ÑÑ Ð¸Ð²Ð°ÑÐ¸Ñ WAL.)ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð·Ð°Ð´Ð°ÑÑ ÑолÑко минималÑное ÑиÑло ÑегменÑов, ÑÐ¾Ñ ÑанÑемое в каÑалоге
pg_xlog; ÑиÑÑема Ð¼Ð¾Ð¶ÐµÑ ÑÐ¾Ñ ÑаниÑÑ Ð±Ð¾Ð»ÑÑе ÑегменÑов Ð´Ð»Ñ Ð°ÑÑ Ð¸Ð²Ð°Ñии WAL или Ð´Ð»Ñ Ð²Ð¾ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñа конÑÑолÑной ÑоÑки. ÐÑлиwal_keep_segmentsÑавен нÑÐ»Ñ (ÑÑо знаÑение по ÑмолÑаниÑ), ÑиÑÑема не ÑÐ¾Ñ ÑанÑÐµÑ Ð½Ð¸ÐºÐ°ÐºÐ¸Ðµ дополниÑелÑнÑе ÑегменÑÑ Ð´Ð»Ñ Ð²ÐµÐ´Ð¾Ð¼ÑÑ ÑеÑвеÑов, поÑÑÐ¾Ð¼Ñ ÑиÑло ÑÑаÑÑÑ ÑегменÑов WAL, доÑÑÑпнÑÑ Ð´Ð»Ñ Ð²ÐµÐ´Ð¾Ð¼ÑÑ ÑеÑвеÑов, завиÑÐ¸Ñ Ð¾Ñ Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿ÑедÑдÑÑей конÑÑолÑной ÑоÑки и ÑоÑÑоÑÐ½Ð¸Ñ Ð°ÑÑ Ð¸Ð²Ð°Ñии WAL. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.wal_sender_timeout(integer)ÐадаÑÑ Ð¿ÐµÑиод вÑемени (в миллиÑекÑÐ½Ð´Ð°Ñ ), по иÑÑеÑении коÑоÑого пÑеÑÑваÑÑÑÑ Ð½ÐµÐ°ÐºÑивнÑе ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ ÑепликаÑии. ÐÑо Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ Ð¿ÐµÑедаÑÑÐµÐ¼Ñ ÑеÑвеÑÑ Ð¾Ð±Ð½Ð°ÑÑжиÑÑ Ñбой ведомого или ÑазÑÑÐ²Ñ ÑеÑи. ÐÑи знаÑении, Ñавном нÑлÑ, Ñайм-аÑÑ Ð¾ÑклÑÑаеÑÑÑ. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко в
postgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â 60 ÑекÑнд.track_commit_timestamp(bool)ÐклÑÑÐ°ÐµÑ Ð·Ð°Ð¿Ð¸ÑÑ Ð²Ñемени ÑикÑаÑии ÑÑанзакÑий. ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ задаÑÑ ÑолÑко в
postgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа. Ðо ÑмолÑÐ°Ð½Ð¸Ñ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¸Ð¼ÐµÐµÑ Ð·Ð½Ð°Ñениеoff.
18.6.2. ÐлавнÑй ÑеÑвеÑ
ÐÑи паÑамеÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ задаÑÑ Ð½Ð° главном/ведÑÑем ÑеÑвеÑе, коÑоÑÑй должен пеÑедаваÑÑ Ð´Ð°Ð½Ð½Ñе ÑепликаÑии Ð¾Ð´Ð½Ð¾Ð¼Ñ Ð¸Ð»Ð¸ неÑколÑким ведомÑм. ÐамеÑÑÑе, ÑÑо помимо ÑÑÐ¸Ñ Ð¿Ð°ÑамеÑÑов на ведÑÑем ÑеÑвеÑе должен бÑÑÑ Ð¿ÑавилÑно ÑÑÑановлен wal_level, а Ñакже Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð²ÐºÐ»ÑÑена аÑÑ Ð¸Ð²Ð°ÑÐ¸Ñ WAL (Ñм. ÐодÑаздел 18.5.3). ÐнаÑÐµÐ½Ð¸Ñ ÑÑÐ¸Ñ Ð¿Ð°ÑамеÑÑов на ведомÑÑ ÑеÑвеÑÐ°Ñ Ð½Ðµ важнÑ, Ñ Ð¾ÑÑ Ð¸Ñ Ð¼Ð¾Ð¶Ð½Ð¾ подгоÑовиÑÑ Ð·Ð°Ñанее, на ÑлÑÑай, еÑли ведомÑй ÑеÑÐ²ÐµÑ Ð¿ÑидÑÑÑÑ ÑделаÑÑ Ð²ÐµÐ´ÑÑим.
synchronous_standby_names(string)ÐпÑеделÑÐµÑ ÑпиÑок ведомÑÑ ÑеÑвеÑов, коÑоÑÑе могÑÑ Ð¿Ð¾Ð´Ð´ÐµÑживаÑÑ ÑÐ¸Ð½Ñ ÑоннÑÑ ÑепликаÑиÑ, как опиÑано в ÐодÑазделе 25.2.8. ÐкÑивнÑÑ ÑÐ¸Ð½Ñ ÑоннÑÑ Ð²ÐµÐ´Ð¾Ð¼ÑÑ ÑеÑвеÑов Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾Ð´Ð¸Ð½ или неÑколÑко; ÑÑанзакÑии, ожидаÑÑие ÑикÑиÑованиÑ, бÑдÑÑ Ð·Ð°Ð²ÐµÑÑаÑÑÑÑ ÑолÑко поÑле Ñого, как ÑÑи ведомÑе ÑеÑвеÑÑ Ð¿Ð¾Ð´ÑвеÑдÑÑ Ð¿Ð¾Ð»ÑÑение Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ . Ð¡Ð¸Ð½Ñ ÑоннÑми ведомÑми ÑеÑвеÑами бÑдÑÑ Ñе, имена коÑоÑÑÑ ÑÐºÐ°Ð·Ð°Ð½Ñ Ð² наÑале ÑÑого ÑпиÑка и коÑоÑÑе подклÑÑÐµÐ½Ñ Ðº Ð³Ð»Ð°Ð²Ð½Ð¾Ð¼Ñ Ð¸ пÑинимаÑÑ Ð¿Ð¾Ñок даннÑÑ Ð² ÑеалÑном вÑемени (ÑÑо показÑÐ²Ð°ÐµÑ Ð¿Ñизнак
streamingв пÑедÑÑавленииpg_stat_replication). СледÑÑÑие ведомÑе ÑеÑвеÑÑ Ð² ÑÑом ÑпиÑке ÑвлÑÑÑÑÑ Ð¿Ð¾ÑенÑиалÑнÑми ÑÐ¸Ð½Ñ ÑоннÑми ÑеÑвеÑами. ÐÑли лÑбой из ÑекÑÑÐ¸Ñ ÑÐ¸Ð½Ñ ÑоннÑÑ Ð²ÐµÐ´Ð¾Ð¼ÑÑ ÑеÑвеÑов оÑклÑÑаеÑÑÑ Ð¿Ð¾ какой-либо пÑиÑине, он немедленно заменÑеÑÑÑ Ð´ÑÑгим, ÑледÑÑÑим по пÑиоÑиÑеÑÑ. Таким обÑазом, Ñказание неÑколÑÐºÐ¸Ñ Ð¸Ð¼Ñн ведомÑÑ ÑеÑвеÑов позволÑÐµÑ Ð¾Ð±ÐµÑпеÑиÑÑ Ð¾ÑÐµÐ½Ñ Ð²ÑÑокÑÑ ÑÑÐµÐ¿ÐµÐ½Ñ Ð´Ð¾ÑÑÑпноÑÑи.ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¿ÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ ÑпиÑок ведомÑÑ ÑеÑвеÑов в одной из ÑледÑÑÑÐ¸Ñ ÑоÑм:
ÑиÑло_ÑÐ¸Ð½Ñ ÑоннÑÑ(имÑ_ведомого[, ...] )имÑ_ведомого[, ...]здеÑÑ
ÑиÑло_ÑÐ¸Ð½Ñ ÑоннÑÑâ ÑиÑло ÑÐ¸Ð½Ñ ÑоннÑÑ Ð²ÐµÐ´Ð¾Ð¼ÑÑ ÑеÑвеÑов, Ð¾Ñ ÐºÐ¾ÑоÑÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ дожидаÑÑÑÑ Ð¾ÑвеÑов Ð´Ð»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑÑанзакÑий, аимÑ_ведомогоâ Ð¸Ð¼Ñ Ð²ÐµÐ´Ð¾Ð¼Ð¾Ð³Ð¾ ÑеÑвеÑа. ÐапÑимеÑ, Ñо знаÑением3 (s1, s2, s3, s4)ÑикÑиÑование ÑÑанзакÑий бÑÐ´ÐµÑ Ð·Ð°Ð²ÐµÑÑаÑÑÑÑ ÑолÑко поÑле полÑÑÐµÐ½Ð¸Ñ Ð·Ð°Ð¿Ð¸Ñей WAL ÑÑÐµÐ¼Ñ Ð²ÑбÑаннÑми по пÑиоÑиÑеÑÑ Ð²ÐµÐ´Ð¾Ð¼Ñми ÑеÑвеÑами из ÑпиÑкаs1,s2,s3иs4.ÐÑоÑÐ°Ñ ÑоÑма иÑполÑзовалаÑÑ Ð² Postgres Pro до веÑÑии 9.6 и по-пÑÐµÐ¶Ð½ÐµÐ¼Ñ Ð¿Ð¾Ð´Ð´ÐµÑживаеÑÑÑ. Ðо ÑÑÑи она ÑавнознаÑна пеÑвой Ñ
ÑиÑлом_ÑÐ¸Ð½Ñ ÑоннÑÑ, ÑавнÑм 1. ÐапÑимеÑ,1 (s1, s2)иs1, s2дейÑÑвÑÑÑ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ð¾: в каÑеÑÑве ÑÐ¸Ð½Ñ Ñонного ведомого вÑбиÑаеÑÑÑ Ð»Ð¸Ð±Ð¾s1, либоs2.РкаÑеÑÑве имени ведомого ÑеÑвеÑа в данном ÑлÑÑае ÑказÑваеÑÑÑ Ð·Ð½Ð°Ñение паÑамеÑÑа
application_name, задаваемое в ÑÑÑоке подклÑÑениÑprimary_conninfoна ведомом ÑеÑвеÑе, пÑинимаÑÑем WAL. УникалÑноÑÑÑ ÑÑÐ¸Ñ Ð¸Ð¼Ñн не конÑÑолиÑÑеÑÑÑ. Ð ÑлÑÑае дÑблиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ð¼Ñн более пÑиоÑиÑеÑнÑм ÑÐ¸Ð½Ñ ÑоннÑм ведомÑм бÑÐ´ÐµÑ ÑÑиÑаÑÑÑÑ Ð¾Ð´Ð¸Ð½, Ñ Ð¾ÑÑ ÐºÐ°ÐºÐ¾Ð¹ именно, не опÑеделено. СпеÑиалÑÐ½Ð¾Ð¼Ñ ÑказаниÑ*ÑооÑвеÑÑÑвÑÐµÑ Ð»Ñбое Ð¸Ð¼Ñ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ (application_name), вклÑÑÐ°Ñ Ð¸Ð¼Ñ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ ÑмолÑÐ°Ð½Ð¸Ñ (walreceiver).ÐÑимеÑание
Ðаждое
имÑ_ведомогодолжно задаваÑÑÑÑ Ð² виде допÑÑÑимого иденÑиÑикаÑоÑа SQL, кÑоме*. ÐÑи Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи его можно заклÑÑаÑÑ Ð² кавÑÑки. Ðо замеÑÑÑе, ÑÑо иденÑиÑикаÑоÑÑимÑ_ведомогоÑÑавниваÑÑÑÑ Ñ Ð¸Ð¼ÐµÐ½Ð°Ð¼Ð¸ пÑиложений без ÑÑÑÑа ÑегиÑÑÑа, незавиÑимо Ð¾Ñ Ñого, заклÑÑÐµÐ½Ñ Ð»Ð¸ они в кавÑÑки или неÑ.ÐÑли имена ÑÐ¸Ð½Ñ ÑоннÑÑ Ð²ÐµÐ´Ð¾Ð¼ÑÑ ÑеÑвеÑов не опÑеделенÑ, ÑÐ¸Ð½Ñ ÑÐ¾Ð½Ð½Ð°Ñ ÑепликаÑÐ¸Ñ Ð½Ðµ вклÑÑаеÑÑÑ Ð¸ ÑикÑиÑÑемÑе ÑÑанзакÑии не бÑдÑÑ Ð¶Ð´Ð°ÑÑ ÑепликаÑии. ÐÑо поведение по ÑмолÑаниÑ. Ðаже когда ÑÐ¸Ð½Ñ ÑÐ¾Ð½Ð½Ð°Ñ ÑепликаÑÐ¸Ñ Ð²ÐºÐ»ÑÑена, Ð´Ð»Ñ Ð¾ÑделÑнÑÑ ÑÑанзакÑий можно оÑклÑÑиÑÑ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ðµ ÑепликаÑии, задав Ð´Ð»Ñ Ð¿Ð°ÑамеÑÑа synchronous_commit знаÑение
localилиoff.ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко в
postgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.vacuum_defer_cleanup_age(integer)ÐадаÑÑ ÑиÑло ÑÑанзакÑий, на коÑоÑое бÑÐ´ÐµÑ Ð¾Ñложена оÑиÑÑка ÑÑаÑÑÑ Ð²ÐµÑÑий ÑÑÑок пÑи
VACUUMи изменениÑÑ HOT. Ðо ÑмолÑÐ°Ð½Ð¸Ñ ÑÑо ÑиÑло Ñавно нÑлÑ, Ñо еÑÑÑ ÑÑаÑÑе веÑÑии ÑÑÑок могÑÑ ÑдалÑÑÑÑÑ ÑÑазÑ, как ÑолÑко пеÑеÑÑанÑÑ Ð±ÑÑÑ Ð²Ð¸Ð´Ð¸Ð¼Ñми в оÑкÑÑÑÑÑ ÑÑанзакÑиÑÑ . ÐÑо знаÑение можно ÑделаÑÑ Ð½ÐµÐ½ÑлевÑм на ведÑÑем ÑеÑвеÑе, ÑабоÑаÑÑим Ñ ÑеÑвеÑами гоÑÑÑего ÑезеÑва, как опиÑано в Разделе 25.5. Ð ÑезÑлÑÑаÑе ÑвелиÑиÑÑÑ Ð²ÑемÑ, в ÑеÑение коÑоÑого бÑдÑÑ ÑÑпеÑно вÑполнÑÑÑÑÑ Ð·Ð°Ð¿ÑоÑÑ Ð½Ð° ведомом ÑеÑвеÑе без конÑликÑов из-за Ñанней оÑиÑÑки ÑÑÑок. Ðднако Ð²Ð²Ð¸Ð´Ñ Ñого, ÑÑо ÑÑа оÑÑÑоÑка опÑеделÑеÑÑÑ ÑиÑлом запиÑÑваÑÑÐ¸Ñ ÑÑанзакÑий, вÑполнÑÑÑÐ¸Ñ ÑÑ Ð½Ð° ведÑÑем ÑеÑвеÑе, Ñложно пÑедÑказаÑÑ, каким бÑÐ´ÐµÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸ÑелÑное вÑÐµÐ¼Ñ Ð¾ÑÑÑоÑки на ведомом ÑеÑвеÑе. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.РкаÑеÑÑве алÑÑеÑнаÑÐ¸Ð²Ñ ÑÑÐ¾Ð¼Ñ Ð¿Ð°ÑамеÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ Ñакже ÑаÑÑмоÑÑеÑÑ
hot_standby_feedbackна ведомом ÑеÑвеÑе.ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð½Ðµ пÑедоÑвÑаÑÐ°ÐµÑ Ð¾ÑиÑÑÐºÑ ÑÑаÑÑÑ ÑÑÑок, коÑоÑÑе доÑÑигли возÑаÑÑа, заданного паÑамеÑÑом
old_snapshot_threshold.
18.6.3. ÐедомÑе ÑеÑвеÑÑ
ÐÑи паÑамеÑÑÑ ÑпÑавлÑÑÑ Ð¿Ð¾Ð²ÐµÐ´ÐµÐ½Ð¸ÐµÐ¼ ведомого ÑеÑвеÑа, коÑоÑÑй бÑÐ´ÐµÑ Ð¿Ð¾Ð»ÑÑаÑÑ Ð´Ð°Ð½Ð½Ñе ÑепликаÑии. Ðа ведÑÑем ÑеÑвеÑе они не игÑаÑÑ Ð½Ð¸ÐºÐ°ÐºÐ¾Ð¹ Ñоли.
hot_standby(boolean)ÐпÑеделÑеÑ, можно ли бÑÐ´ÐµÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑаÑÑÑÑ Ðº ÑеÑвеÑÑ Ð¸ вÑполнÑÑÑ Ð·Ð°Ð¿ÑоÑÑ Ð² пÑоÑеÑÑе воÑÑÑановлениÑ, как опиÑано в Разделе 25.5. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â
off(подклÑÑÐµÐ½Ð¸Ñ Ð½Ðµ ÑазÑеÑаÑÑÑÑ). ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко пÑи запÑÑке ÑеÑвеÑа. ÐаннÑй паÑамеÑÑ Ð¸Ð³ÑÐ°ÐµÑ ÑÐ¾Ð»Ñ ÑолÑко в Ñежиме ведомого ÑеÑвеÑа или пÑи воÑÑÑановлении аÑÑ Ð¸Ð²Ð°.max_standby_archive_delay(integer)Ð Ñежиме гоÑÑÑего ÑезеÑва ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¾Ð¿ÑеделÑеÑ, как долго должен ждаÑÑ Ð²ÐµÐ´Ð¾Ð¼Ñй ÑеÑвеÑ, пÑежде Ñем оÑменÑÑÑ Ð·Ð°Ð¿ÑоÑÑ, конÑликÑÑÑÑие Ñ Ð¾ÑеÑеднÑми изменениÑми в WAL, как опиÑано в ÐодÑазделе 25.5.2. ÐадеÑжка
max_standby_archive_delayпÑименÑеÑÑÑ Ð¿Ñи обÑабоÑке даннÑÑ WAL, ÑÑиÑÑваемÑÑ Ð¸Ð· аÑÑ Ð¸Ð²Ð° (не ÑекÑÑÐ¸Ñ Ð´Ð°Ð½Ð½ÑÑ ). ÐнаÑение ÑÑого паÑамеÑÑа задаÑÑÑÑ Ð² миллиÑекÑÐ½Ð´Ð°Ñ (еÑли Ñвно не ÑÐºÐ°Ð·Ð°Ð½Ñ Ð´ÑÑгие единиÑÑ) и по ÑмолÑÐ°Ð½Ð¸Ñ Ñавно 30 ÑекÑндам. ÐÑи знаÑении, Ñавном -1, ведомÑй Ð¼Ð¾Ð¶ÐµÑ Ð¶Ð´Ð°ÑÑ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÑликÑÑÑÑÐ¸Ñ Ð·Ð°Ð¿ÑоÑов неогÑаниÑенное вÑемÑ. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.ÐамеÑÑÑе, ÑÑо паÑамеÑÑ
max_standby_archive_delayопÑеделÑÐµÑ Ð½Ðµ макÑималÑное вÑемÑ, коÑоÑое оÑводиÑÑÑ Ð´Ð»Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ запÑоÑа, а макÑималÑное обÑее вÑемÑ, за коÑоÑое Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ Ð¿ÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸Ð· одного ÑегменÑа WAL. Таким обÑазом, еÑли один запÑÐ¾Ñ Ð¿ÑивÑл к знаÑиÑелÑной задеÑжке пÑи обÑабоÑке ÑегменÑа WAL, оÑÑалÑнÑм конÑликÑÑÑÑим запÑоÑам бÑÐ´ÐµÑ Ð¾Ñведено гоÑаздо менÑÑе вÑемени.max_standby_streaming_delay(integer)Ð Ñежиме гоÑÑÑего ÑезеÑва ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¾Ð¿ÑеделÑеÑ, как долго должен ждаÑÑ Ð²ÐµÐ´Ð¾Ð¼Ñй ÑеÑвеÑ, пÑежде Ñем оÑменÑÑÑ Ð·Ð°Ð¿ÑоÑÑ, конÑликÑÑÑÑие Ñ Ð¾ÑеÑеднÑми изменениÑми в WAL, как опиÑано в ÐодÑазделе 25.5.2. ÐадеÑжка
max_standby_streaming_delayпÑименÑеÑÑÑ Ð¿Ñи обÑабоÑке даннÑÑ WAL, поÑÑÑпаÑÑÐ¸Ñ Ð¿Ñи поÑоковой ÑепликаÑии. ÐнаÑение ÑÑого паÑамеÑÑа задаÑÑÑÑ Ð² миллиÑекÑÐ½Ð´Ð°Ñ (еÑли Ñвно не ÑÐºÐ°Ð·Ð°Ð½Ñ Ð´ÑÑгие единиÑÑ) и по ÑмолÑÐ°Ð½Ð¸Ñ Ñавно 30 ÑекÑндам. ÐÑи знаÑении, Ñавном -1, ведомÑй Ð¼Ð¾Ð¶ÐµÑ Ð¶Ð´Ð°ÑÑ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÑликÑÑÑÑÐ¸Ñ Ð·Ð°Ð¿ÑоÑов неогÑаниÑенное вÑемÑ. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.ÐамеÑÑÑе, ÑÑо паÑамеÑÑ
max_standby_streaming_delayопÑеделÑÐµÑ Ð½Ðµ макÑималÑное вÑемÑ, коÑоÑое оÑводиÑÑÑ Ð´Ð»Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ запÑоÑа, а макÑималÑное обÑее вÑемÑ, за коÑоÑое Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ Ð¿ÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸Ð· WAL поÑле полÑÑÐµÐ½Ð¸Ñ Ð¾Ñ Ð³Ð»Ð°Ð²Ð½Ð¾Ð³Ð¾ ÑеÑвеÑа. Таким обÑазом, еÑли один запÑÐ¾Ñ Ð¿ÑивÑл к знаÑиÑелÑной задеÑжке, оÑÑалÑнÑм конÑликÑÑÑÑим запÑоÑам бÑÐ´ÐµÑ Ð¾ÑводиÑÑÑÑ Ð³Ð¾Ñаздо менÑÑе вÑемени, пока ÑезеÑвнÑй ÑеÑÐ²ÐµÑ Ð½Ðµ Ð´Ð¾Ð³Ð¾Ð½Ð¸Ñ Ð³Ð»Ð°Ð²Ð½Ñй.wal_receiver_status_interval(integer)ÐпÑеделÑÐµÑ Ð¼Ð¸Ð½Ð¸Ð¼Ð°Ð»ÑнÑÑ ÑаÑÑоÑÑ, Ñ ÐºÐ¾ÑоÑой пÑоÑеÑÑ, пÑинимаÑÑий WAL на ведомом ÑеÑвеÑе, бÑÐ´ÐµÑ ÑообÑаÑÑ Ð¾ ÑоÑÑоÑнии ÑепликаÑии ведÑÑÐµÐ¼Ñ Ð¸Ð»Ð¸ вÑÑеÑÑоÑÑÐµÐ¼Ñ Ð²ÐµÐ´Ð¾Ð¼Ð¾Ð¼Ñ, где ÑÑо ÑоÑÑоÑние можно наблÑдаÑÑ Ð² пÑедÑÑавлении
pg_stat_replication. Ð ÑÑом ÑообÑении пеÑедаÑÑÑÑ ÑледÑÑÑие позиÑии в жÑÑнале пÑедзапиÑи: позиÑÐ¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ запиÑаннÑÑ , изменений, ÑÐ¾Ñ ÑанÑннÑÑ Ð½Ð° диÑке, и изменений пÑименÑннÑÑ . ÐнаÑение паÑамеÑÑа задаÑÑÑÑ Ð² ÑекÑÐ½Ð´Ð°Ñ Ð¸ опÑеделÑÐµÑ Ð¼Ð°ÐºÑималÑнÑй инÑеÑвал Ð¼ÐµÐ¶Ð´Ñ ÑообÑениÑми. СообÑÐµÐ½Ð¸Ñ Ð¾ ÑоÑÑоÑнии пеÑедаÑÑÑÑ Ð¿Ñи каждом пÑодвижении позиÑий запиÑаннÑÑ Ð¸Ð»Ð¸ ÑÐ¾Ñ ÑанÑннÑÑ Ð½Ð° диÑке изменений, но Ñ Ð¿ÑомежÑÑком не болÑÑе, Ñем заданнÑй ÑÑим паÑамеÑÑом. Таким обÑазом, поÑледнÑÑ Ð¿ÐµÑÐµÐ´Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ð·Ð¸ÑÐ¸Ñ Ð¿ÑименÑннÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ Ð¼Ð¾Ð¶ÐµÑ Ð½ÐµÐ¼Ð½Ð¾Ð³Ð¾ оÑÑÑаваÑÑ Ð¾Ñ ÑакÑиÑеÑкой в ÑекÑÑий моменÑ. ÐÑи нÑлевом знаÑении ÑÑого паÑамеÑÑа пеÑедаÑа ÑоÑÑоÑÐ½Ð¸Ñ Ð¿Ð¾Ð»Ð½Ð¾ÑÑÑÑ Ð¾ÑклÑÑаеÑÑÑ. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа. Ðо ÑмолÑÐ°Ð½Ð¸Ñ ÐµÐ³Ð¾ знаÑение Ñавно 10 ÑекÑндам.hot_standby_feedback(boolean)ÐпÑеделÑеÑ, бÑÐ´ÐµÑ Ð»Ð¸ ÑеÑÐ²ÐµÑ Ð³Ð¾ÑÑÑего ÑезеÑва ÑообÑаÑÑ Ð²ÐµÐ´ÑÑÐµÐ¼Ñ Ð¸Ð»Ð¸ вÑÑеÑÑоÑÑÐµÐ¼Ñ Ð²ÐµÐ´Ð¾Ð¼Ð¾Ð¼Ñ Ð¾ запÑоÑÐ°Ñ , коÑоÑÑе он вÑполнÑÐµÑ Ð² даннÑй моменÑ. ÐÑо позволÑÐµÑ Ð¸ÑклÑÑиÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑÑ Ð¾ÑÐ¼ÐµÐ½Ñ Ð·Ð°Ð¿ÑоÑов, вÑзваннÑÑ Ð¾ÑиÑÑкой запиÑей, но пÑи некоÑоÑÑÑ ÑÐ¸Ð¿Ð°Ñ Ð½Ð°Ð³ÑÑзки ÑÑо Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑиводиÑÑ Ðº ÑаздÑÐ²Ð°Ð½Ð¸Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ Ð½Ð° ведÑÑем ÑеÑвеÑе. ÐÑи ÑообÑÐµÐ½Ð¸Ñ Ð¾ запÑоÑÐ°Ñ Ð±ÑдÑÑ Ð¾ÑпÑавлÑÑÑÑÑ Ð½Ðµ ÑаÑе, Ñем Ñаз в инÑеÑвал, задаваемÑй паÑамеÑÑом
wal_receiver_status_interval. ÐнаÑение данного паÑамеÑÑа по ÑмолÑÐ°Ð½Ð¸Ñ âoff. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.ÐÑли иÑполÑзÑеÑÑÑ ÐºÐ°ÑÐºÐ°Ð´Ð½Ð°Ñ ÑепликаÑиÑ, ÑообÑÐµÐ½Ð¸Ñ Ð¾ запÑоÑÐ°Ñ Ð¿ÐµÑедаÑÑÑÑ Ð²ÑÑе, пока в иÑоге не доÑÑигнÑÑ Ð²ÐµÐ´ÑÑего ÑеÑвеÑа. Ðа пÑомежÑÑоÑнÑÑ ÑеÑвеÑÐ°Ñ ÑÑа инÑоÑмаÑÐ¸Ñ Ð±Ð¾Ð»ÑÑе никак не задейÑÑвÑеÑÑÑ.
ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð½Ðµ пеÑеопÑеделÑÐµÑ Ð¿Ð¾Ð²ÐµÐ´ÐµÐ½Ð¸Ðµ
old_snapshot_threshold, ÑÑÑановленное на ведÑÑем ÑеÑвеÑе; Ñнимок на ведомом ÑеÑвеÑе, имеÑÑий возÑаÑÑ Ð±Ð¾Ð»ÑÑе заданного ÑказаннÑм паÑамеÑÑом на ведÑÑем, Ð¼Ð¾Ð¶ÐµÑ ÑÑаÑÑ Ð½ÐµÐ´ÐµÐ¹ÑÑвиÑелÑнÑм, ÑÑо пÑиведÑÑ Ðº оÑмене ÑÑанзакÑий на ведомом. ÐÑо обÑÑÑнÑеÑÑÑ Ñем, ÑÑо пÑедназнаÑениеold_snapshot_thresholdзаклÑÑаеÑÑÑ Ð² Ñказании абÑолÑÑного огÑаниÑÐµÐ½Ð¸Ñ Ð²Ñемени, в ÑеÑение коÑоÑого могÑÑ Ð½Ð°ÐºÐ°Ð¿Ð»Ð¸Ð²Ð°ÑÑÑÑ Ð¼ÑÑÑвÑе ÑÑÑоки, коÑоÑое инаÑе могло Ð±Ñ Ð½Ð°ÑÑÑаÑÑÑÑ Ð¸Ð·-за конÑигÑÑаÑии ведомого.wal_receiver_timeout(integer)ÐадаÑÑ Ð¿ÐµÑиод вÑемени (в миллиÑекÑÐ½Ð´Ð°Ñ ), по иÑÑеÑении коÑоÑого пÑеÑÑваÑÑÑÑ Ð½ÐµÐ°ÐºÑивнÑе ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ ÑепликаÑии. ÐÑо Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ Ð¿ÑинимаÑÑÐµÐ¼Ñ Ð²ÐµÐ´Ð¾Ð¼Ð¾Ð¼Ñ ÑеÑвеÑÑ Ð¾Ð±Ð½Ð°ÑÑжиÑÑ Ñбой ведÑÑего или ÑазÑÑв ÑеÑи. ÐÑи знаÑении, Ñавном нÑлÑ, Ñайм-аÑÑ Ð¾ÑклÑÑаеÑÑÑ. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко в
postgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â 60 ÑекÑнд.wal_retrieve_retry_interval(integer)ÐпÑеделÑеÑ, ÑколÑко ведомÑй ÑеÑÐ²ÐµÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ ждаÑÑ Ð¿Ð¾ÑÑÑÐ¿Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ WAL из лÑбÑÑ Ð¸ÑÑоÑников (поÑÐ¾ÐºÐ¾Ð²Ð°Ñ ÑепликаÑиÑ, локалÑнÑй
pg_xlogили аÑÑ Ð¸Ð² WAL), пÑежде Ñем повÑоÑÑÑÑ Ð¿Ð¾Ð¿ÑÑÐºÑ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ WAL. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке ÑеÑвеÑа. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â 5 ÑекÑнд. ÐÑли единиÑÑ Ð½Ðµ задаÑÑÑÑ, подÑазÑмеваÑÑÑÑ Ð¼Ð¸Ð»Ð»Ð¸ÑекÑндÑ.ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¿Ð¾Ð»ÐµÐ·ÐµÐ½ в конÑигÑÑаÑиÑÑ , когда Ð´Ð»Ñ Ñзла в ÑÑ ÐµÐ¼Ðµ воÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ñжно ÑегÑлиÑоваÑÑ Ð²ÑÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²ÑÑ Ð´Ð°Ð½Ð½ÑÑ WAL. ÐапÑимеÑ, пÑи воÑÑÑановлении аÑÑ Ð¸Ð²Ð° можно ÑÑкоÑиÑÑ ÑеакÑÐ¸Ñ Ð½Ð° поÑвление нового Ñайла WAL, ÑменÑÑив знаÑение ÑÑого паÑамеÑÑа. Ð ÑиÑÑеме Ñ Ð½Ð¸Ð·ÐºÐ¾Ð¹ акÑивноÑÑÑÑ WAL ÑвелиÑение ÑÑого паÑамеÑÑа пÑиведÑÑ Ðº ÑокÑаÑÐµÐ½Ð¸Ñ ÑиÑла запÑоÑов, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼ÑÑ Ð´Ð»Ñ Ð¾ÑÑÐ»ÐµÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð°ÑÑ Ð¸Ð²Ð¾Ð² WAL, ÑÑо Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿Ð¾Ð»ÐµÐ·Ð½Ð¾ в облаÑнÑÑ Ð¾ÐºÑÑжениÑÑ , где ÑÑиÑÑваеÑÑÑ ÑиÑло обÑаÑений к инÑÑаÑÑÑÑкÑÑÑе.