PostgreSQL 9.1 এ স্বয়ংক্রিয় ব্যর্থতার জন্য কীভাবে একটি সেটআপ দুটি অভিন্ন সার্ভার করে।
অপারেটিং সিস্টেম
Centos 5
PostgreSQL 9.1 উত্স থেকে সংকলিত পোস্টগ্রিজ
ব্যবহারকারী অ্যাকাউন্ট উভয় মেশিনে বিদ্যমান এবং উভয় মেশিনে সংযোগ করার জন্য একটি এসএসএস পাসওয়ার্ডহীন কী রয়েছে।
আমার বর্তমান সেটআপ:
মাস্টার সার্ভার কনফিগারেশন:
postgresql.conf:
listen_address = '*'
wal_level = hot_standby
max_wal_senders = 3
checkpoint_segments = 16
wal_keep_segments = 8
archive_mode = on
archive_command = 'cp "%p" /opt/pgsql91/archive/"%f"'
pg_hba.conf:
host replication all 10.0.66.1/32 trust
host replication all 10.0.66.2/32 trust
স্ট্যান্ডবাই সার্ভার
postgresql.conf এবং pg_hba.conf মাস্টার সার্ভারে যা কনফিগার করা হয়েছে তার সমান।
recovery.conf:
standby_mode = 'on'
primary_conninfo = 'host=10.0.66.1'
trigger_file = '/opt/pgsql91/data/trigger.txt'
HzRoot ধন্যবাদ, আমি এখন বুঝতে পারি কীভাবে স্ট্যান্ডবাই থেকে মাস্টারটিতে সার্ভারটি স্যুইচ করা যায়।
নিম্নলিখিত কমান্ডগুলি ব্যবহার করে, আমি নতুন স্লেভকে নতুন মাস্টারের সাথে সিঙ্ক্রোনাইজ করতে পারি এবং তারপরেই রেপ্লিকেশন ব্যাকআপ এবং চলমান পেতে পারি।
নতুন মাস্টারে (10.0.66.2)
- su - postgres
- / opt / pgsql91 / ডাটা / ইন
- পুনরুদ্ধার.কনফ পুনরুদ্ধার হয়ে যায়
- psql -c "; নির্বাচন করুন pg_start_backup ('ব্যাকআপ', সত্য)";
- আরএসআইএনসি -এ -ভি-এসএসএস / অপ্ট / পিএসএসকিএল91 / ডেটা / 10.0.66.1:/opt/pgsql91/data/ - পোস্টমাস্টার.পিড অন্তর্ভুক্ত করুন
- psql -c "; নির্বাচন করুন pg_stop_backup ()";
নতুন দাসে (10.0.66.1)
- রিকভারি.কনফ: সিপি রিকভারি তৈরি করুন recovery
- vi পুনরুদ্ধার.কেন্ফ আইপি ঠিকানা পরিবর্তন করুন: প্রাথমিক_কন্নিনফো = 'হোস্ট = 10.0.66.2'
- postgresql শুরু করুন
সুতরাং আমার প্রশ্নগুলি এখন:
- এটি কি ভূমিকা পাল্টানোর সঠিক উপায়?
- কেউ কি এই প্রক্রিয়াটি স্বয়ংক্রিয় করেছেন, তা হলে আপনি কী করেছেন?
- যদি সিঙ্ক্রোনাস প্রতিলিপি সক্ষম করা থাকে তবে আমি লক্ষ্য করেছি যে নতুন মাস্টার সার্ভার কোনও লেনদেন করবে না কারণ এটি দাসটির প্রতিক্রিয়া জানার জন্য অপেক্ষা করছে। কোনও গোলাম নেই যদিও অন্য সার্ভার, পুরানো মাস্টার ডাউন রয়েছে। এটি কি সঠিক বা নতুন দাসটি ডাউন থাকাকালীন আমার কি সাময়িকভাবে সিঙ্ক্রোনাস প্রতিলিপি অক্ষম করা দরকার?