সার্ভারে সেট না করে pgAdmin এ সংযোগটি বেঁচে রাখার কোনও উপায়?


14

আমি আমার ডাটাবেসগুলি হোস্ট করতে postgres.heroku.com ব্যবহার করছি। এর মানে হল যে আমার কাছে সার্ভার সেটিংস পরিবর্তন করার কোনও উপায় নেই। সুতরাং, এই প্রশ্নের উত্তর আমাকে সাহায্য করে না। হেরোকু তাদের সেটিংস পরিবর্তন করতে রাজি নয় (আমি তাদের সাথে যোগাযোগ করেছি)।

আমি ভাবছি সংযোগটি টিকিয়ে রাখতে পিজএডমিন তৃতীয় হ্যাক করার সর্বোত্তম উপায়টি কী। আমি পিজএডমিন ব্যাকগ্রাউন্ডে থাকা অবস্থায় ইউজার ইন্টারফেস ক্রিয়াগুলি স্বয়ংক্রিয় করতে অটোহোটকি ম্যাক্রো তৈরি করার মতো জিনিসগুলির কথা ভাবছি, বা পিজএডমিনসের পক্ষ থেকে নেটওয়ার্ক বার্তা প্রেরণে বাধ্য করার জন্য কোনও ধরণের নেটওয়ার্ক সরঞ্জাম ব্যবহার করতে চাই।

আমি PgAmin III এর কোড পরিবর্তন করতে কারও জন্য 500 ডলার অফারও পেয়েছি। পিজএডমিনের বিকাশকারী, কোডটি পরিবর্তন করবেন না, কেবল হেরোকুর কারণে।

আমার কি করা উচিৎ? পিজএডমিন অনেক উপায়ে উচ্চতর, এটিতে কেবল এই ত্রুটি রয়েছে।


এফওয়াইআই, হেরোকু এই সমস্যাটি নিয়ে একা নন। আমরা আজুরের হোস্ট করা একটি লিনাক্স ভিএম-এ এই সমস্যাটি নিয়ে চলেছি এবং আমি মনে করি যে পরিষেবা সরবরাহকারী নিষ্ক্রিয় টিসিপি সংযোগগুলি বন্ধ করে দেওয়ার ক্ষেত্রে। এটি খুব ভাল লাগবে যদি পিজএডমিন জীবিত রাখার বিকল্পটি প্রকাশ করতে পারে
জোনাস স্টাওস্কি

1
আমি এই সমস্যাটি 2002 থেকে প্যাগাডমিনের সাথে নিয়েছিলাম! অ্যাপ্লিকেশনটি বন্ধ করে দেওয়া, এটি আবার খুলতে এবং পুরো গাছটি পুনরায় খোলার পরিবর্তে একবারে প্যাগডমিন একবার বার হয়ে গেলে অটো পুনঃসংযোগ করতে কোড করা যেতে পারে?
ম্যাথু লক

উত্তর:


18

libpq, অন্তর্নিহিত PostgreSQL ক্লায়েন্ট লাইব্রেরি, টিসিপি রক্ষণাবেক্ষণ সক্ষম করার keepalivesবিকল্প রয়েছে

দেখে মনে হচ্ছে PgAdmin-III আপনাকে সরাসরি নির্বিচারে সংযোগের প্যারামিটারগুলি নির্দিষ্ট করার অনুমতি দেয় না, তবে একটি কার্যকারিতা রয়েছে।

আপনি যখন PgAdmin-III এ সংযোগ কনফিগারেশনটি দেখেন, আপনি একটি "পরিষেবা" বিকল্প দেখতে পাবেন। এটি সংযোগ পরিষেবা ফাইলকে বোঝায় । এটি ব্যবহার করতে, এর ~/.pg_service.confমতো সামগ্রী সহ একটি তৈরি করুন :

[myherokudb]
user=myusername
keepalives=1
connect_timeout=20
keepalives_idle=10

এবং পিজএডমিন-তৃতীয় থেকে সংযোগ myherokudbকরার সময় serviceক্ষেত্রটিতে প্রবেশ করুন ।

এটি পিজএডমিন-তৃতীয় রক্ষণাবেক্ষণকে সক্ষম করার সাথে সাথে সার্ভিস ফাইলে নির্দিষ্ট করা সংযোগ প্যারামিটারগুলি ব্যবহার করবে।

(আপনি যদি উইন্ডোতে থাকেন তবে পরিষেবা ফাইলটি অন্য কোনও স্থানে থাকতে পারে; ডকুমেন্টেশনটি দেখুন)।

libpqরক্ষণশীলদের নিয়ন্ত্রণে কোনও পরিবেশের পরিবর্তনশীল নেই , সুতরাং আপনি এটিকে সেট করতে পারবেন না, আপনাকে একটি পরিষেবা ফাইল ব্যবহার করতে হবে।

PgAdmin-III- এ অতিরিক্ত সংযোগের পরামিতিগুলির জন্য সমর্থন যুক্ত করা বা রক্ষণাবেক্ষণ পরামিতিগুলি নিয়ন্ত্রণ করতে সংযোগ বিকল্পগুলির মধ্যে একটি চেকবক্স, খুব তুচ্ছ হওয়া উচিত। আমি ভাবছি যদি ডেভ বুঝতে পারে যে আপনি কাজের অর্থের জন্য আপনার অফারটির জন্য কী জিজ্ঞাসা করছেন।


আপডেট : পরিসেবা ফাইলটি PGSYSCONFDIRপরিবেশের ভেরিয়েবলের মধ্যে উল্লিখিত অবস্থানটিতে সন্ধান করা হবে । যদি আনসেট না করা থাকে তবে এটি প্ল্যাটফর্ম-নির্দিষ্ট স্থানে ডিফল্ট হয়, যা উইন্ডোজের জন্য সঠিকভাবে নথিভুক্ত বলে মনে হয় না। আমি একটি ডকুমেন্টেশন প্যাচ জমা দেব। ডকুমেন্টেশন.pgpass তার পাথ শো হিসাবে %APPDATA%\postgresql\pgpass.confযদিও, তাই ~/.pg_service.confহওয়া উচিত %APPDATA%\postgresql\pg_service.conf... কিন্তু এটা হতে মনে হচ্ছে না।

আসলে, সঠিক পথটি হ'ল:

%APPDATA%\postgresql\.pg_service.conf

তাই:

  • Start-> চালু করুন
  • `% AppData%
  • ডিরেক্টরি উপস্থিত না থাকলে "postgresql" তৈরি করুন
  • উপরে বর্ণিত বিষয়বস্তু সহ একটি পাঠ্য ফাইল হিসাবে ".pg_service.conf" ফাইল তৈরি করুন (পুনরায় ফাইলের নামকরণের নোট দেখুন)
  • পিজএডমিন-তৃতীয়তে, হোস্টের নামটিতে "লোকালহোস্ট" এবং পরিষেবা ক্ষেত্রে পরিষেবা নাম লিখুন।

আমি উইন্ডোজটিতে পরীক্ষা করেছি এবং দেখেছি যে আপনি hostউইন্ডোতে PgAdmin-III তে খালি খালি ছাড়তে পারবেন না । PgAdmin-III সংযোগ ডায়ালগটিতে যা নির্দিষ্ট করা আছে তার সাথে পরিষেবা ফাইলে নির্দিষ্ট করা কোনও হোস্টকে ওভাররাইড করে বলে মনে হচ্ছে। সুতরাং আপনাকে hostপরিষেবার ফাইলে কোনও কী অন্তর্ভুক্ত করা উচিত নয় । (আমি একটি বাগ রিপোর্ট করব)।

উইন্ডোজটিতে "জ্ঞাত ফাইলের জন্য ফাইলের প্রচ্ছদ লুকান" বন্ধ করে দিন, যাতে আপনি দুর্ঘটনাক্রমে এর .pg_service.conf.txtপরিবর্তে কল করবেন না । এটির নাম দেওয়া হয়েছে কিনা তা আপনি যদি অনিশ্চিত থাকেন তবে তালিকার ভিউটিতে উইন্ডোজ এক্সপ্লোরারে "টাইপ" কলামটি পরীক্ষা করুন; এটি "পাঠ্য দস্তাবেজ" পড়বে যদি এটির ভুল নামকরণ করা হয় .pg_service.conf.txt, এবং CONF Fileযদি এটির সঠিক নামকরণ করা হয় .pg_service.conf। যদি এর নাম পরিবর্তন করতে আপনার সমস্যা হয় তবে "জ্ঞাত ফাইল ধরণের জন্য ফাইল এক্সটেনশনগুলি লুকান" বন্ধ করুন, বা নোটপ্যাড ++ এর মতো একটি বুদ্ধিমান পাঠ্য সম্পাদক ব্যবহার করুন যা আপনাকে নিজের পছন্দ মতো ফাইলগুলি তৈরি করতে দেবে।

ফাইলনামে নেতৃস্থানীয় পিরিয়ড (ডট) নোট করুন। হ্যাঁ, এটি pgpass.confবাগ থেকে পৃথক , এবং হ্যাঁ, এটি বিরক্তিকর।


এটার জন্য অনেক ধন্যবাদ! আমি এখন আমার উইন্ডোজ 7 কম্পিউটারে এটি ব্যবহার করতে 45 ​​মিনিট ব্যয় করেছি। প্রথম জিনিসটি হ'ল আমি "হোস্ট" ক্ষেত্রটি খালি রাখতে পারি না। এটি সেই কথোপকথনে "ঠিক আছে" বোতামটি অক্ষম করবে। আমি হোস্ট হিসাবে "-" ব্যবহার করার চেষ্টা করেছি, যা আমাকে দ্বিতীয় সমস্যায় ফেলেছে। Pg_service.conf ফাইলটি কোথায় রাখবেন তা আমি জানি না। আমি ট্রায়াল এবং ত্রুটি করার চেষ্টা করেছি এবং এটি পিজএডমিন তৃতীয় সম্পর্কিত সমস্ত উপ ডিরেক্টরিতে এবং সি: \ ব্যবহারকারীগণ c পিসি D অ্যাপডেটা \ রোমিং \ পোস্টগ্রেকল-এ রেখেছি। আমি সর্বদা ত্রুটি পেয়েছি: "পরিষেবার সংজ্ঞা" মাইরোকুডব "পাওয়া যায় নি
ডেভিড

1
আমি pg_service.conf সম্পর্কেও পড়ার চেষ্টা করেছি, তবে আমি মনে করি যে এটি কেবলমাত্র একটি সার্ভার-সাইড প্রসঙ্গে উল্লেখ করে ডকুমেন্টেশন খুঁজে পেয়েছি।
ডেভিড

আমি জানি না আপনি "সার্ভার-সাইড প্রসঙ্গ" কোথায় পেয়েছেন যে ক্লায়েন্টকে আমি যে ডকুমেন্টের সাথে লিঙ্ক করেছি তার সাথে সম্পর্কিত হয়েছে। যদি আপনি ধরে না নেন "ইউনিক্স / লিনাক্স" এর অর্থ "সার্ভার", যা এটি না। যেহেতু আপনি মূলত আপনি কী OS এ ছিলেন তা উল্লেখ করার জন্য আপনি মাথা ঘামান নি তাই আমি আরও নির্দিষ্ট করে বলতে পারি না। আমি এখন উইন্ডোজ-নির্দিষ্ট তথ্য দিয়ে উত্তরটি আপডেট করেছি (এবং সত্যি বলতে গেলে এটি যথেষ্টই যথেষ্ট যে আপনি বিভ্রান্ত হয়েছিলেন)। এছাড়াও, উইন্ডোজ পিজএডমিন-তৃতীয়তে সার্ভিস ফাইলে উল্লিখিত হোস্টকে ইউআই-তে উল্লিখিত একের সাথে ওভাররাইড করে বলে মনে হচ্ছে, তাই hostসার্ভিস ফাইলটি ফাঁকা রেখে দিন।
ক্রেগ রিঞ্জার

আপনার সাহায্যের জন্য আপনাকে অনেক ধন্যবাদ! আপনার সমাধান ঠিক কাজ করে! ফাইলের নামের মধ্যে এটি ছিল শীর্ষস্থানীয় বিন্দু যা আমাকে বিভ্রান্ত করেছিল, আমি ভেবেছিলাম এটি লিনাক্সের জিনিস। আবার আপনাকে ধন্যবাদ!
ডেভিড

2
আসলে, এই সমাধানটি সর্বোপরি কার্যকর হয় না। আমাকে এই সিদ্ধান্তে আসতে দীর্ঘ সময় লেগেছে, এই ভেবে যে এটি আমার নেটওয়ার্ক অস্থিরতা ইত্যাদির কারণ was তবে এ সংযোগটি এখনও সত্যই শেষ হতে পারে না। আমি নিশ্চিত যে আমি আপনার বিবরণটি অনুসরণ করেছি। এটি একটি ক্ষেত্রে হতে পারে, যদি হিরকু কয়েকশো ফ্রি ডাটাবেস হোস্ট করে তাদের ফ্রি টেস্ট সার্ভারের সাথে কয়েক হাজার সংযোগ না রাখার জন্য কিছু জায়গায় রেখেছিল।
ডেভিড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.