{"id":81870,"date":"2024-10-29T17:24:37","date_gmt":"2024-10-29T13:54:37","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/"},"modified":"2024-10-29T17:24:37","modified_gmt":"2024-10-29T13:54:37","slug":"setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/","title":{"rendered":"\u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc Logical Replication \u0628\u0627 pglogical \u062f\u0631 PostgreSQL \u062f\u0631 AWS"},"content":{"rendered":"<p>Summarize this content to 400 words in Persian Lang \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0645\u0631\u0648\u0632\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u062f\u0627\u062f\u0647\u060c \u062a\u0648\u0627\u0646\u0627\u06cc\u06cc \u062a\u06a9\u062b\u06cc\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0628\u0647 \u0637\u0648\u0631 \u06a9\u0627\u0631\u0622\u0645\u062f \u0648 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u062f\u0631 \u0645\u062d\u06cc\u0637\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0628\u0633\u06cc\u0627\u0631 \u0645\u0647\u0645 \u0627\u0633\u062a. \u06cc\u06a9\u06cc \u0627\u0632 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u06cc\u0627\u0628\u06cc \u0628\u0647 \u0627\u06cc\u0646 \u0627\u0645\u0631 \u062f\u0631 PostgreSQL pglogical \u0627\u0633\u062a\u060c \u0627\u0641\u0632\u0648\u0646\u0647 \u0627\u06cc \u06a9\u0647 \u0642\u0627\u0628\u0644\u06cc\u062a \u0647\u0627\u06cc \u062a\u06a9\u0631\u0627\u0631 \u0645\u0646\u0637\u0642\u06cc \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647\u060c \u0645\u0631\u0627\u062d\u0644 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u062a\u06a9\u0631\u0627\u0631 \u0645\u0646\u0637\u0642\u06cc \u0628\u06cc\u0646 \u062f\u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 PostgreSQL \u06a9\u0647 \u0631\u0648\u06cc AWS \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 pglogical \u0645\u06cc\u0632\u0628\u0627\u0646\u06cc \u0634\u062f\u0647\u200c\u0627\u0646\u062f \u0631\u0627 \u0637\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645.<\/p>\n<p>  \u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627<\/p>\n<p>\u0642\u0628\u0644 \u0627\u0632 \u0648\u0631\u0648\u062f \u0628\u0647 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\u060c \u0645\u0637\u0645\u0626\u0646 \u0634\u0648\u06cc\u062f \u06a9\u0647 \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0627\u0631\u06cc\u062f:<\/p>\n<p>\u062f\u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 PostgreSQL \u06a9\u0647 \u0631\u0648\u06cc AWS RDS \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u0646\u062f (\u0645\u062b\u0644\u0627\u064b dmitry_test_src \u0648 dmitry_test_dest).<br \/>\n\u0633\u0631\u0648\u06cc\u0633 \u06af\u06cc\u0631\u0646\u062f\u0647 PostgreSQL \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0631\u0648\u06cc \u0645\u0627\u0634\u06cc\u0646 \u0645\u062d\u0644\u06cc \u0634\u0645\u0627 \u0646\u0635\u0628 \u0634\u062f\u0647 \u0627\u0633\u062a.<br \/>\n\u0645\u062c\u0648\u0632\u0647\u0627\u06cc \u0644\u0627\u0632\u0645 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0646\u0642\u0634 \u0647\u0627\u060c \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0648 \u067e\u0633\u0648\u0646\u062f\u0647\u0627.<br \/>\n\u067e\u0627\u0631\u0627\u0645\u062a\u0631\u0647\u0627\u06cc \u0646\u0645\u0648\u0646\u0647 AWS RDS Source DB \u0648 Destination DB \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>rds.logical_replication=1 \u0628\u0631\u0627\u06cc \u0631\u0633\u06cc\u062f\u0646 \u0628\u0647 wal_level=\u0645\u0646\u0637\u0642\u06cc<br \/>\n max_replication_slots=10<br \/>\n max_wal_senders=15<br \/>\n max_worker_processes=10<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u0627\u06cc\u062c\u0627\u062f \u0646\u0642\u0634 \u0647\u0627 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647<\/p>\n<p>  \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639<\/p>\n<p>\u0628\u0627 \u0627\u06cc\u062c\u0627\u062f \u0646\u0642\u0634 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0645\u0646\u0628\u0639 \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>CREATE ROLE dmitry_test_src WITH LOGIN NOSUPERUSER INHERIT CREATEDB NOCREATEROLE NOREPLICATION PASSWORD &#8216;1234567&#8217;;<br \/>\nCREATE DATABASE dmitry_test_src;<br \/>\nGRANT CONNECT ON DATABASE dmitry_test_src TO dmitry_test_src;<br \/>\nGRANT ALL PRIVILEGES ON DATABASE dmitry_test_src TO dmitry_test_src;<br \/>\nGRANT dmitry_test_src TO root;<br \/>\nALTER DATABASE dmitry_test_src OWNER TO dmitry_test_src;<\/p>\n<p>  \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f<\/p>\n<p>\u0633\u067e\u0633 \u06cc\u06a9 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0645\u0634\u0627\u0628\u0647 \u0628\u0631\u0627\u06cc \u0645\u0642\u0635\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<p>CREATE ROLE dmitry_test_dest WITH LOGIN NOSUPERUSER INHERIT CREATEDB NOCREATEROLE NOREPLICATION PASSWORD &#8216;1234567&#8217;;<br \/>\nCREATE DATABASE dmitry_test_dest;<br \/>\nGRANT CONNECT ON DATABASE dmitry_test_dest TO dmitry_test_dest;<br \/>\nGRANT ALL PRIVILEGES ON DATABASE dmitry_test_dest TO dmitry_test_dest;<br \/>\nGRANT dmitry_test_dest TO root;<br \/>\nALTER DATABASE dmitry_test_dest OWNER TO dmitry_test_dest;<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 2: \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u0641\u0632\u0648\u062f\u0646\u06cc pglogical \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u0628\u0647 \u0647\u0631 \u062f\u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u062a\u0635\u0644 \u0634\u062f\u0647 \u0648 \u067e\u0633\u0648\u0646\u062f pglogical \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p>  \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639<\/p>\n<p>psql -h localhost -p 5432 -U dmitry_test_src -d dmitry_test_src<br \/>\nCREATE EXTENSION pglogical;<\/p>\n<p>  \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f<\/p>\n<p>psql -h localhost -p 5432 -U dmitry_test_dest -d dmitry_test_dest<br \/>\nCREATE EXTENSION pglogical;<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u06af\u0631\u0647 \u0645\u0646\u0628\u0639 \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639\u060c \u06af\u0631\u0647 pglogical \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<p>SELECT pglogical.create_node(<br \/>\n  node_name := &#8216;src&#8217;,<br \/>\n  dsn := &#8216;host=dmitry-test-src.abcdeghijklmno.us-east-1.rds.amazonaws.com port=5432 user=root dbname=dmitry_test_src password=********&#8217;<br \/>\n);<\/p>\n<p>\u0633\u067e\u0633\u060c \u062a\u0645\u0627\u0645 \u062c\u062f\u0627\u0648\u0644 \u0639\u0645\u0648\u0645\u06cc \u0631\u0627 \u0628\u0647 \u0645\u062c\u0645\u0648\u0639\u0647 \u062a\u06a9\u0631\u0627\u0631 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>SELECT pglogical.replication_set_add_all_tables(&#8216;default&#8217;, ARRAY[&#8216;public&#8217;]);<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u06af\u0631\u0647 \u0645\u0642\u0635\u062f \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f\u060c \u06af\u0631\u0647 pglogical \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<p>SELECT pglogical.create_node(<br \/>\n  node_name := &#8216;dest&#8217;,<br \/>\n  dsn := &#8216;host=dmitry-test-dest.pqrstuvwxyz.us-east-1.rds.amazonaws.com port=5432 user=root dbname=dmitry_test_dest password=********&#8217;<br \/>\n);<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 5: \u0627\u06cc\u062c\u0627\u062f \u0627\u0634\u062a\u0631\u0627\u06a9 \u062f\u0631 \u0645\u0642\u0635\u062f<\/p>\n<p>\u062f\u0631 \u0646\u0647\u0627\u06cc\u062a\u060c \u06cc\u06a9 \u0627\u0634\u062a\u0631\u0627\u06a9 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0627\u0632 \u0645\u0646\u0628\u0639 \u062a\u06a9\u0631\u0627\u0631 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>SELECT pglogical.create_subscription(<br \/>\n  subscription_name := &#8216;subscription1&#8217;,<br \/>\n  provider_dsn := &#8216;host=dmitry-test-src.abcdeghijklmno.us-east-1.rds.amazonaws.com port=5432 user=root dbname=dmitry_test_src password=********&#8217;<br \/>\n);<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 6: \u0648\u0636\u0639\u06cc\u062a \u0627\u0634\u062a\u0631\u0627\u06a9 \u0631\u0627 \u0646\u0638\u0627\u0631\u062a \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0628\u0627 \u0627\u062c\u0631\u0627\u06cc \u0632\u06cc\u0631 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0648\u0636\u0639\u06cc\u062a \u0627\u0634\u062a\u0631\u0627\u06a9 \u062e\u0648\u062f \u0631\u0627 \u06a9\u0646\u062a\u0631\u0644 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>SELECT subscription_name, status FROM pglogical.show_subscription_status();<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 7: \u0627\u0634\u062a\u0631\u0627\u06a9 \u0631\u0627 \u0631\u0647\u0627 \u06a9\u0646\u06cc\u062f (\u062f\u0631 \u0635\u0648\u0631\u062a \u0646\u06cc\u0627\u0632)<\/p>\n<p>\u0627\u06af\u0631 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062d\u0630\u0641 \u0627\u0634\u062a\u0631\u0627\u06a9 \u062f\u0631 \u0647\u0631 \u0646\u0642\u0637\u0647 \u0627\u06cc \u062f\u0627\u0631\u06cc\u062f\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0631\u0627 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>SELECT pglogical.drop_subscription(&#8216;subscription1&#8217;);<\/p>\n<p>  \u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<\/p>\n<p>\u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u062a\u06a9\u0631\u0627\u0631 \u0645\u0646\u0637\u0642\u06cc \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 pglogical \u062f\u0631 PostgreSQL \u062f\u0631 AWS \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0633\u062a\u0631\u0633\u06cc \u0648 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u062a\u0627 \u062d\u062f \u0632\u06cc\u0627\u062f\u06cc \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u062f. \u0628\u0627 \u062f\u0646\u0628\u0627\u0644 \u06a9\u0631\u062f\u0646 \u0645\u0631\u0627\u062d\u0644 \u0630\u06a9\u0631 \u0634\u062f\u0647 \u062f\u0631 \u0628\u0627\u0644\u0627\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0648\u062b\u0631 \u06cc\u06a9 \u0645\u062d\u06cc\u0637 \u062a\u06a9\u0631\u0627\u0631\u06cc \u0631\u0627 \u0645\u062a\u0646\u0627\u0633\u0628 \u0628\u0627 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u062e\u0648\u062f \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f. \u0645\u062b\u0644 \u0647\u0645\u06cc\u0634\u0647\u060c \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f \u0648 \u0648\u0636\u0639\u06cc\u062a \u062a\u0646\u0638\u06cc\u0645 \u062a\u06a9\u0631\u0627\u0631 \u062e\u0648\u062f \u0631\u0627 \u0628\u0631\u0627\u06cc \u062d\u0641\u0638 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u062e\u0648\u062f \u0646\u0638\u0627\u0631\u062a \u0645\u06cc \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0645\u0631\u0648\u0632\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u062f\u0627\u062f\u0647\u060c \u062a\u0648\u0627\u0646\u0627\u06cc\u06cc \u062a\u06a9\u062b\u06cc\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0628\u0647 \u0637\u0648\u0631 \u06a9\u0627\u0631\u0622\u0645\u062f \u0648 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u062f\u0631 \u0645\u062d\u06cc\u0637\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0628\u0633\u06cc\u0627\u0631 \u0645\u0647\u0645 \u0627\u0633\u062a. \u06cc\u06a9\u06cc \u0627\u0632 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u06cc\u0627\u0628\u06cc \u0628\u0647 \u0627\u06cc\u0646 \u0627\u0645\u0631 \u062f\u0631 PostgreSQL pglogical \u0627\u0633\u062a\u060c \u0627\u0641\u0632\u0648\u0646\u0647 \u0627\u06cc \u06a9\u0647 \u0642\u0627\u0628\u0644\u06cc\u062a \u0647\u0627\u06cc \u062a\u06a9\u0631\u0627\u0631 \u0645\u0646\u0637\u0642\u06cc \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647\u060c \u0645\u0631\u0627\u062d\u0644 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u062a\u06a9\u0631\u0627\u0631 \u0645\u0646\u0637\u0642\u06cc \u0628\u06cc\u0646 \u062f\u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 PostgreSQL \u06a9\u0647 \u0631\u0648\u06cc AWS \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 pglogical \u0645\u06cc\u0632\u0628\u0627\u0646\u06cc \u0634\u062f\u0647\u200c\u0627\u0646\u062f \u0631\u0627 \u0637\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"\u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a \u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%BE%DB%8C%D8%B4_%D9%86%DB%8C%D8%A7%D8%B2%D9%87%D8%A7\" >\u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%D9%86%D9%82%D8%B4_%D9%87%D8%A7_%D9%88_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D9%87%D8%A7%DB%8C_%D8%AF%D8%A7%D8%AF%D9%87\" >\u0645\u0631\u062d\u0644\u0647 1: \u0627\u06cc\u062c\u0627\u062f \u0646\u0642\u0634 \u0647\u0627 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%86%D8%A8%D8%B9\" >\u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%82%D8%B5%D8%AF\" >\u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87_%D8%A7%D9%81%D8%B2%D9%88%D8%AF%D9%86%DB%8C_pglogical_%D8%B1%D8%A7_%D9%86%D8%B5%D8%A8_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 2: \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u0641\u0632\u0648\u062f\u0646\u06cc pglogical \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D8%AF%D8%B1_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%86%D8%A8%D8%B9\" >\u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D8%AF%D8%B1_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%82%D8%B5%D8%AF\" >\u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%DA%AF%D8%B1%D9%87_%D9%85%D9%86%D8%A8%D8%B9_%D8%B1%D8%A7_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 3: \u06af\u0631\u0647 \u0645\u0646\u0628\u0639 \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%DA%AF%D8%B1%D9%87_%D9%85%D9%82%D8%B5%D8%AF_%D8%B1%D8%A7_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 4: \u06af\u0631\u0647 \u0645\u0642\u0635\u062f \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%D8%AF%D8%B1_%D9%85%D9%82%D8%B5%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 5: \u0627\u06cc\u062c\u0627\u062f \u0627\u0634\u062a\u0631\u0627\u06a9 \u062f\u0631 \u0645\u0642\u0635\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_6_%D9%88%D8%B6%D8%B9%DB%8C%D8%AA_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%D8%B1%D8%A7_%D9%86%D8%B8%D8%A7%D8%B1%D8%AA_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 6: \u0648\u0636\u0639\u06cc\u062a \u0627\u0634\u062a\u0631\u0627\u06a9 \u0631\u0627 \u0646\u0638\u0627\u0631\u062a \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_7_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%D8%B1%D8%A7_%D8%B1%D9%87%D8%A7_%DA%A9%D9%86%DB%8C%D8%AF_%D8%AF%D8%B1_%D8%B5%D9%88%D8%B1%D8%AA_%D9%86%DB%8C%D8%A7%D8%B2\" >\u0645\u0631\u062d\u0644\u0647 7: \u0627\u0634\u062a\u0631\u0627\u06a9 \u0631\u0627 \u0631\u0647\u0627 \u06a9\u0646\u06cc\u062f (\u062f\u0631 \u0635\u0648\u0631\u062a \u0646\u06cc\u0627\u0632)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-logical-replication-with-pglogical-in-postgresql-on-aws-1edi\/#%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C\" >\u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%BE%DB%8C%D8%B4_%D9%86%DB%8C%D8%A7%D8%B2%D9%87%D8%A7\"><\/span>\n<p>  \u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0642\u0628\u0644 \u0627\u0632 \u0648\u0631\u0648\u062f \u0628\u0647 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\u060c \u0645\u0637\u0645\u0626\u0646 \u0634\u0648\u06cc\u062f \u06a9\u0647 \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0627\u0631\u06cc\u062f:<\/p>\n<ul>\n<li>\u062f\u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 PostgreSQL \u06a9\u0647 \u0631\u0648\u06cc AWS RDS \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u0646\u062f (\u0645\u062b\u0644\u0627\u064b dmitry_test_src \u0648 dmitry_test_dest).<\/li>\n<li>\u0633\u0631\u0648\u06cc\u0633 \u06af\u06cc\u0631\u0646\u062f\u0647 PostgreSQL \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0631\u0648\u06cc \u0645\u0627\u0634\u06cc\u0646 \u0645\u062d\u0644\u06cc \u0634\u0645\u0627 \u0646\u0635\u0628 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/li>\n<li>\u0645\u062c\u0648\u0632\u0647\u0627\u06cc \u0644\u0627\u0632\u0645 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0646\u0642\u0634 \u0647\u0627\u060c \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0648 \u067e\u0633\u0648\u0646\u062f\u0647\u0627.<\/li>\n<li>\u067e\u0627\u0631\u0627\u0645\u062a\u0631\u0647\u0627\u06cc \u0646\u0645\u0648\u0646\u0647 AWS RDS Source DB \u0648 Destination DB \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f:<\/li>\n<\/ul>\n<p>rds.logical_replication=1 \u0628\u0631\u0627\u06cc \u0631\u0633\u06cc\u062f\u0646 \u0628\u0647 wal_level=\u0645\u0646\u0637\u0642\u06cc<br \/>\n max_replication_slots=10<br \/>\n max_wal_senders=15<br \/>\n max_worker_processes=10<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%D9%86%D9%82%D8%B4_%D9%87%D8%A7_%D9%88_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D9%87%D8%A7%DB%8C_%D8%AF%D8%A7%D8%AF%D9%87\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u0627\u06cc\u062c\u0627\u062f \u0646\u0642\u0634 \u0647\u0627 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h3><span class=\"ez-toc-section\" id=\"%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%86%D8%A8%D8%B9\"><\/span>\n<p>  \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0628\u0627 \u0627\u06cc\u062c\u0627\u062f \u0646\u0642\u0634 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0645\u0646\u0628\u0639 \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>CREATE ROLE dmitry_test_src WITH LOGIN NOSUPERUSER INHERIT CREATEDB NOCREATEROLE NOREPLICATION PASSWORD '1234567';\nCREATE DATABASE dmitry_test_src;\nGRANT CONNECT ON DATABASE dmitry_test_src TO dmitry_test_src;\nGRANT ALL PRIVILEGES ON DATABASE dmitry_test_src TO dmitry_test_src;\nGRANT dmitry_test_src TO root;\nALTER DATABASE dmitry_test_src OWNER TO dmitry_test_src;\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%82%D8%B5%D8%AF\"><\/span>\n<p>  \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0633\u067e\u0633 \u06cc\u06a9 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0645\u0634\u0627\u0628\u0647 \u0628\u0631\u0627\u06cc \u0645\u0642\u0635\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>CREATE ROLE dmitry_test_dest WITH LOGIN NOSUPERUSER INHERIT CREATEDB NOCREATEROLE NOREPLICATION PASSWORD '1234567';\nCREATE DATABASE dmitry_test_dest;\nGRANT CONNECT ON DATABASE dmitry_test_dest TO dmitry_test_dest;\nGRANT ALL PRIVILEGES ON DATABASE dmitry_test_dest TO dmitry_test_dest;\nGRANT dmitry_test_dest TO root;\nALTER DATABASE dmitry_test_dest OWNER TO dmitry_test_dest;\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87_%D8%A7%D9%81%D8%B2%D9%88%D8%AF%D9%86%DB%8C_pglogical_%D8%B1%D8%A7_%D9%86%D8%B5%D8%A8_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 2: \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u0641\u0632\u0648\u062f\u0646\u06cc pglogical \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u0628\u0647 \u0647\u0631 \u062f\u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u062a\u0635\u0644 \u0634\u062f\u0647 \u0648 \u067e\u0633\u0648\u0646\u062f pglogical \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D8%AF%D8%B1_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%86%D8%A8%D8%B9\"><\/span>\n<p>  \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>psql -h localhost -p 5432 -U dmitry_test_src -d dmitry_test_src\nCREATE EXTENSION pglogical;\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D8%AF%D8%B1_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87_%D9%85%D9%82%D8%B5%D8%AF\"><\/span>\n<p>  \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>psql -h localhost -p 5432 -U dmitry_test_dest -d dmitry_test_dest\nCREATE EXTENSION pglogical;\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%DA%AF%D8%B1%D9%87_%D9%85%D9%86%D8%A8%D8%B9_%D8%B1%D8%A7_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u06af\u0631\u0647 \u0645\u0646\u0628\u0639 \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0646\u0628\u0639\u060c \u06af\u0631\u0647 pglogical \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>SELECT pglogical.create_node(\n  node_name := 'src',\n  dsn := 'host=dmitry-test-src.abcdeghijklmno.us-east-1.rds.amazonaws.com port=5432 user=root dbname=dmitry_test_src password=********'\n);\n<\/code><\/pre>\n<\/div>\n<p>\u0633\u067e\u0633\u060c \u062a\u0645\u0627\u0645 \u062c\u062f\u0627\u0648\u0644 \u0639\u0645\u0648\u0645\u06cc \u0631\u0627 \u0628\u0647 \u0645\u062c\u0645\u0648\u0639\u0647 \u062a\u06a9\u0631\u0627\u0631 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>SELECT pglogical.replication_set_add_all_tables('default', ARRAY['public']);\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%DA%AF%D8%B1%D9%87_%D9%85%D9%82%D8%B5%D8%AF_%D8%B1%D8%A7_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u06af\u0631\u0647 \u0645\u0642\u0635\u062f \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f\u060c \u06af\u0631\u0647 pglogical \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>SELECT pglogical.create_node(\n  node_name := 'dest',\n  dsn := 'host=dmitry-test-dest.pqrstuvwxyz.us-east-1.rds.amazonaws.com port=5432 user=root dbname=dmitry_test_dest password=********'\n);\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%D8%AF%D8%B1_%D9%85%D9%82%D8%B5%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 5: \u0627\u06cc\u062c\u0627\u062f \u0627\u0634\u062a\u0631\u0627\u06a9 \u062f\u0631 \u0645\u0642\u0635\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u0646\u0647\u0627\u06cc\u062a\u060c \u06cc\u06a9 \u0627\u0634\u062a\u0631\u0627\u06a9 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u0642\u0635\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0627\u0632 \u0645\u0646\u0628\u0639 \u062a\u06a9\u0631\u0627\u0631 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>SELECT pglogical.create_subscription(\n  subscription_name := 'subscription1',\n  provider_dsn := 'host=dmitry-test-src.abcdeghijklmno.us-east-1.rds.amazonaws.com port=5432 user=root dbname=dmitry_test_src password=********'\n);\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_6_%D9%88%D8%B6%D8%B9%DB%8C%D8%AA_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%D8%B1%D8%A7_%D9%86%D8%B8%D8%A7%D8%B1%D8%AA_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 6: \u0648\u0636\u0639\u06cc\u062a \u0627\u0634\u062a\u0631\u0627\u06a9 \u0631\u0627 \u0646\u0638\u0627\u0631\u062a \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0628\u0627 \u0627\u062c\u0631\u0627\u06cc \u0632\u06cc\u0631 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0648\u0636\u0639\u06cc\u062a \u0627\u0634\u062a\u0631\u0627\u06a9 \u062e\u0648\u062f \u0631\u0627 \u06a9\u0646\u062a\u0631\u0644 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>SELECT subscription_name, status FROM pglogical.show_subscription_status();\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_7_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%D8%B1%D8%A7_%D8%B1%D9%87%D8%A7_%DA%A9%D9%86%DB%8C%D8%AF_%D8%AF%D8%B1_%D8%B5%D9%88%D8%B1%D8%AA_%D9%86%DB%8C%D8%A7%D8%B2\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 7: \u0627\u0634\u062a\u0631\u0627\u06a9 \u0631\u0627 \u0631\u0647\u0627 \u06a9\u0646\u06cc\u062f (\u062f\u0631 \u0635\u0648\u0631\u062a \u0646\u06cc\u0627\u0632)<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0627\u06af\u0631 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062d\u0630\u0641 \u0627\u0634\u062a\u0631\u0627\u06a9 \u062f\u0631 \u0647\u0631 \u0646\u0642\u0637\u0647 \u0627\u06cc \u062f\u0627\u0631\u06cc\u062f\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0631\u0627 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>SELECT pglogical.drop_subscription('subscription1');\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C\"><\/span>\n<p>  \u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u062a\u06a9\u0631\u0627\u0631 \u0645\u0646\u0637\u0642\u06cc \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 pglogical \u062f\u0631 PostgreSQL \u062f\u0631 AWS \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0633\u062a\u0631\u0633\u06cc \u0648 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u062a\u0627 \u062d\u062f \u0632\u06cc\u0627\u062f\u06cc \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u062f. \u0628\u0627 \u062f\u0646\u0628\u0627\u0644 \u06a9\u0631\u062f\u0646 \u0645\u0631\u0627\u062d\u0644 \u0630\u06a9\u0631 \u0634\u062f\u0647 \u062f\u0631 \u0628\u0627\u0644\u0627\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0648\u062b\u0631 \u06cc\u06a9 \u0645\u062d\u06cc\u0637 \u062a\u06a9\u0631\u0627\u0631\u06cc \u0631\u0627 \u0645\u062a\u0646\u0627\u0633\u0628 \u0628\u0627 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u062e\u0648\u062f \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f. \u0645\u062b\u0644 \u0647\u0645\u06cc\u0634\u0647\u060c \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f \u0648 \u0648\u0636\u0639\u06cc\u062a \u062a\u0646\u0638\u06cc\u0645 \u062a\u06a9\u0631\u0627\u0631 \u062e\u0648\u062f \u0631\u0627 \u0628\u0631\u0627\u06cc \u062d\u0641\u0638 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u062e\u0648\u062f \u0646\u0638\u0627\u0631\u062a \u0645\u06cc \u06a9\u0646\u06cc\u062f.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Summarize this content to 400 words in Persian Lang \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0645\u0631\u0648\u0632\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u062f\u0627\u062f\u0647\u060c \u062a\u0648\u0627\u0646\u0627\u06cc\u06cc \u062a\u06a9\u062b\u06cc\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0628\u0647 \u0637\u0648\u0631 \u06a9\u0627\u0631\u0622\u0645\u062f \u0648 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u062f\u0631 \u0645\u062d\u06cc\u0637\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0628\u0633\u06cc\u0627\u0631 \u0645\u0647\u0645 \u0627\u0633\u062a. \u06cc\u06a9\u06cc \u0627\u0632 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u06cc\u0627\u0628\u06cc \u0628\u0647 \u0627\u06cc\u0646 \u0627\u0645\u0631 \u062f\u0631 PostgreSQL pglogical \u0627\u0633\u062a\u060c \u0627\u0641\u0632\u0648\u0646\u0647 \u0627\u06cc \u06a9\u0647 \u0642\u0627\u0628\u0644\u06cc\u062a \u0647\u0627\u06cc \u062a\u06a9\u0631\u0627\u0631 \u0645\u0646\u0637\u0642\u06cc \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f. \u062f\u0631 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-81870","post","type-post","status-publish","format-standard","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/81870","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=81870"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/81870\/revisions"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=81870"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=81870"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=81870"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}