পোস্টগ্র্যাস্কল প্রতিলিপি সংযোগ গ্রহণ করে না


19

সরল পুরানো স্ট্রিমিংয়ের প্রতিরূপ। পোস্টগ্রিএসকিউএল: 9.2.7 উইন্ডোজ 8.1 64 বিট

আমার প্রাথমিক এবং গৌণ ক্লাস্টারগুলি একই উইন্ডোজ মেশিনে রয়েছে। আমি ইতিমধ্যে pg_start_backup () এবং সব কিছু করে ফেলেছি , সুতরাং উভয় নোডের ঠিক একই ডেটা রয়েছে।

এখন প্রতিলিপিটির সাথে সমস্যাটি হ'ল স্লেভ সার্ভার থেকে "রেপ্লিকেশন সংযোগ" প্রাইমারী সার্ভারের সাথে সংযুক্ত হয় না তবে আমি পিএসএকিএল শেল ব্যবহার করে একই প্যারাম ব্যবহার করে সংযোগ করতে পারি। আমি যা মনে করি অপরাধী হ'ল দাসের পুনরুদ্ধারের ক্ষেত্রে সংযোগের স্ট্রিং on

primary_conninfo = 'host = 127.0.0.1 port = 5432 user = postgres password = postgres'

আমি লোকালহোস্ট চেষ্টা করেছি, ০.০.০.০, ল্যাপ আইপি সবকিছুই কিন্তু পিজি লগ বলে:

 FATAL:  could not connect to the primary server: FATAL:  no pg_hba.conf entry for replication connection from host "127.0.0.1", user "postgres", SSL off

এখন আমার মাস্টার এর pg_hba.conf দেখুন:

host     all     all     0.0.0.0/0   trust
host    all             postgres             127.0.0.1/0               trust
# IPv6 local connections:
host    all             all             ::1/128                 md5
hostnossl    all     postgres    127.0.0.1/32    trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#host    replication     postgres        127.0.0.1/32            md5
#host    replication     postgres        ::1/128                 md5

এটি যেমন প্রতিটি সম্ভাব্য সংযোগের অনুমতি দিয়েছি তবুও স্লেভ সংযোগ করতে পারে না। আপনি কোন সাহায্য করতে পারেন?

উত্তর:


25

ডেটাবেস নাম হতে হয়েছে replicationযেমন allরেপ্লিকেশন সংযোগ কাভার করে না।

host    replication    postgres             127.0.0.1/0               trust

পোস্টগ্রি ডকুমেন্টেশন আরও বলেন:

মানটি replicationউল্লেখ করে যে কোনও প্রতিলিপি সংযোগের জন্য অনুরোধ করা হলে রেকর্ডটি মেলে (নোট করুন যে প্রতিলিপি সংযোগগুলি কোনও নির্দিষ্ট ডাটাবেস নির্দিষ্ট করে না)। অন্যথায়, এটি একটি নির্দিষ্ট পোস্টগ্রিজ এসকিউএল ডাটাবেসের নাম। একাধিক ডাটাবেসের নাম কমা দিয়ে আলাদা করে সরবরাহ করা যেতে পারে। ডাটাবেসের নাম সম্বলিত একটি পৃথক ফাইলটি ফাইলের নামের সাথে পূর্ববর্তী করে নির্দিষ্ট করা যেতে পারে @


আমাদের কি একটি প্রতিলিপি ডেটাবেস তৈরি করতে হবে? না এটি অন্তর্নির্মিত ??
গিমিবারাক

এটি অন্তর্নির্মিত নয় এবং আপনাকে প্রতিলিপি সেটআপ করতে হবে। এখানে রেফারেন্সটি দেওয়া হচ্ছে: ডিজিটালওশন.com/কমিনিউটি / টিউটোরিয়ালস /…
শচীন ভার্মা

নোট করুন যে এটি যৌক্তিক প্রতিরূপের ক্ষেত্রে নয়
mlissner

3

নীচের লাইনটি যুক্ত করা pg_hba.confএবং পুনরায় লোড করা আমার পক্ষে কাজ করেছে। প্রকারটি 'স্থানীয়' বিবেচনা করে স্পষ্টভাবে নির্দিষ্ট করে কোনও ঠিকানা প্রয়োজন হয় না।

# TYPE  DATABASE        USER            ADDRESS                 METHOD
local   replication     postgres                                peer

এবং মনে রাখবেন pg_ctl reload


2

এখানে অন্য একটি সম্ভাব্য সমাধান যা আমি দৌড়ে এসেছি। আপনি যদি লজিকাল প্রতিলিপি করছেন এবং আপনার যদি DATABASE প্রতিরূপে সেট করেছেন তবে এটি কার্যকর হবে না। এটির জন্য কেবল একটি নিয়মিত প্যারামিটার পাওয়া দরকার। replicationপরামিতি শারীরিক রেপ্লিকেশন, না লজিক্যাল রেপ্লিকেশন জন্য।

ম্যান, যে একজন কিছু কাজ খুঁজে বের করতে। আশা করি এটা কাজে লাগবে!


1
এটি আরও upvated করা প্রয়োজন। আমি এটি না পাওয়া পর্যন্ত আমি ওয়াল 2 জসন প্লাগইন সমস্যার সমাধানের জন্য ঘন্টা ব্যয় করেছি এবং এটি আমার পক্ষে সঠিক উত্তর answer এটি প্রদর্শিত হয় যে ওয়াল 2 জসন প্লাগইনটি যৌক্তিক প্রতিরূপ ব্যবহার করে যাতে কাজ করার জন্য তাদের উদাহরণ pg_recvlogical কমান্ডটি পাওয়ার জন্য আমার pg_hba.conf সেট করতে হবে মূল শব্দটির 'প্রতিলিপি' এর পরিবর্তে 'পরীক্ষা' ডাটাবেসের নাম ব্যবহার করার জন্য
আলফ 47
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.