Ubuntu 24.04
Sponsored Link

PostgreSQL 16 : स्ट्रीमिंग प्रतिकृति2024/05/30

 

PostgreSQL स्ट्रीमिंग प्रतिकृति कॉन्फ़िगर करें।
यह कॉन्फ़िगरेशन सामान्य प्राथमिक/प्रतिकृति सेटिंग्स है।

[1]

सभी नोड्स पर PostgreSQL सर्वर स्थापित करें और प्रारंभ करें, यहां देखें [1]।

[2] प्राथमिक नोड कॉन्फ़िगर करें।
root@www:~#
vi /etc/postgresql/16/main/postgresql.conf
# पंक्ति 60 : टिप्पणी हटाएँ और बदलें

listen_addresses = '
*
'
# पंक्ति 211 : टिप्पणी हटाएँ

wal_level = replica
# पंक्ति 216 : टिप्पणी हटाएँ

synchronous_commit = on
# पंक्ति 314 : टिप्पणी रद्द करें (स्ट्रीमिंग क्लाइंट से समवर्ती कनेक्शन की अधिकतम संख्या)

max_wal_senders = 10
# पंक्ति 328 : टिप्पणी हटाएँ और बदलें

synchronous_standby_names = '
*
'
root@www:~#
vi /etc/postgresql/16/main/pg_hba.conf
# अंत में जोड़ें
# host replication [प्रतिकृति उपयोगकर्ता] [अनुमत नेटवर्क] [प्रमाणीकरण विधि]

host    replication     rep_user        10.0.0.30/32            scram-sha-256
host    replication     rep_user        10.0.0.51/32            scram-sha-256

# प्रतिकृति के लिए एक उपयोगकर्ता बनाएँ

root@www:~#
su - postgres

postgres@www:~$
createuser --replication -P rep_user

Enter password for new role:  
# कोई भी पासवर्ड सेट करें

Enter it again:
postgres@www:~$
exit
root@www:~#
systemctl restart postgresql
[3] प्रतिकृति नोड कॉन्फ़िगर करें।
# PostgreSQL रोकें और मौजूदा डेटा हटा दें

root@node01:~#
systemctl stop postgresql

root@node01:~#
rm -rf /var/lib/postgresql/16/main/*
# प्राथमिक नोड से बैकअप प्राप्त करें

root@node01:~#
su - postgres

postgres@node01:~$
pg_basebackup -R -h www.srv.world -U rep_user -D /var/lib/postgresql/16/main -P

Password:  
# password of replication user

30799/30799 kB (100%), 1/1 tablespace
postgres@node01:~$
exit
root@node01:~#
vi /etc/postgresql/16/main/postgresql.conf
# पंक्ति 60 : टिप्पणी हटाएँ और बदलें

listen_addresses = '
*
'
# पंक्ति 339 : टिप्पणी हटाएँ

hot_standby = on
root@node01:~#
systemctl start postgresql

[4] यदि प्राथमिक नोड पर नीचे दिए गए आदेश का परिणाम इस प्रकार है तो यह ठीक है। सत्यापित करें कि डेटाबेस बनाने या प्राथमिक नोड पर डेटा डालने के लिए सेटिंग सामान्य रूप से काम करती है।
postgres@www:~$
psql -c "select usename, application_name, client_addr, state, sync_priority, sync_state from pg_stat_replication;"

 usename  | application_name | client_addr |   state   | sync_priority | sync_state
----------+------------------+-------------+-----------+---------------+------------
 rep_user | 16/main          | 10.0.0.51   | streaming |             1 | sync
(1 row)
मिलान सामग्री