postgres সার্ভার আরম্ভ করতে ব্যর্থ হয়েছে, কোনও লগ তৈরি করে না, কীভাবে সমস্যা সমাধান করবেন?


33

আমি একটি উবুন্টু 12.04 সার্ভারে 9.3 উদাহরণ পোস্টগ্রেস শুরু করছি:

~# service postgresql start 

 * The PostgreSQL server failed to start. Please check the log output.
                                                                     [fail]

শুরুটি ব্যর্থ হয়, তবে এটি কোনও লগ ছাড়েনি, এই ফাইলটি খালি:

tail /var/log/postgresql/postgresql-9.3-main.log 

এবং এই ডিরেক্টরিতে অন্য কোনও ফাইল নেই: / var / লগ / postgresql /

এটির সমস্যা সমাধানের সর্বোত্তম উপায় কী?


এটি কি নতুন পিজি ইনস্টল বা আপনি কেবল একটি আপগ্রেড করেছেন? পোস্টগ্রিসের ব্যবহারকারীর
পিজি

3
যেমন আপনার স্ক্রিপ্টটি করে চলমান postgres চেষ্টা করুন একই ভাবে (সাধারণত su - postgres; /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/dataএবং দেখুন সেখানে কি এটা আপনি দেয় আপনি আপনার সেটআপ উপর নির্ভর করে পরিবর্তন ব্যবহারকারী নাম এবং পাথ করতে হতে
জেনি ডি পুনর্বহাল মনিকা বলেছেন

কি @JennyD বলেন ছাড়াও, আমি যোগ হবে -d 3থেকে postgresকমান্ড। এটি লগতে আরও বিস্তৃত ডিবাগিং আউটপুট সক্ষম করবে। আপনি ডিবাগিং আউটপুটটিকে 1 বা 2 এ পরিবর্তন করে, বা এটিকে 4 বা 5 এ পরিবর্তন করে বাড়াতে পারেন, এছাড়াও, আউটপুটটি কী which pgsql?
জিমাহান

পোস্টগ্র্রেএসকিউএল কীভাবে সার্ভারে ইনস্টল করা হয়েছিল এবং কোথা থেকে? সিস্টেম লগগুলিতে কি কিছু আছে যেমন, / var / log / syslog, / var / লগ / বার্তা ইত্যাদি?
ক্রেগ রিঞ্জার

6
কেন এই প্রশ্নটি বন্ধ ছিল তা আমি বুঝতে পারি না।
গেটল্লি

উত্তর:


53

ডিবাগ সক্ষম করে এটি ম্যানুয়ালি চালানোর চেষ্টা করুন। এর ফলে এটি অগ্রভাগে চালিত হবে এবং কোনও ত্রুটি বার্তাকে প্রমিত ত্রুটিতে মুদ্রণ করবে, পাশাপাশি ভারবোসিটি বৃদ্ধি করবে।

আমি বিশ্বাস করি উবুন্টুতে পোস্টগ্র্রেএসকিউএল 9.3 এর জন্য এটি সঠিক কমান্ড লাইন হবে তবে এর জন্য কিছুটা সামান্য টুইট করার প্রয়োজন হতে পারে (দ্রষ্টব্য: পাঠ্যতার জন্য লাইনটি বিভক্ত; আপনি চাইলে একে একটি লাইনে পুনরায় সংযুক্ত করতে পারেন):

/usr/lib/postgresql/9.3/bin/postgres -d 3 -D /var/lib/postgresql/9.3/main \
   -c config_file=/etc/postgresql/9.3/main/postgresql.conf

postgresশুরুটি বাইনারিটির অবস্থান , তারপরে আমরা ডিবাগ সক্ষম করি এবং এটিকে স্তরের 3 তে সেট করে (আপনি ভার্বোসটি বাড়াতে বা হ্রাস করতে এটি এটিকে উপরে বা নীচে সামঞ্জস্য করতে পারেন)। এরপরে আমরা শুরু করতে ডেটা ডিরেক্টরি এবং কনফিগার ফাইলটি নির্দিষ্ট করি। আমার মনে হয় উবুন্টু সার্ভার 12.04 এর জন্য এটি ডিফল্ট হওয়া উচিত।

আশা করি, সমস্যাটি কোথায় তা নির্ধারণ করার জন্য এটি আপনাকে যথেষ্ট তথ্য দেবে।


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

1
@ chrismarx - serviceকমান্ডটি /etc/init.d/স্ক্রিপ্টের চারপাশে কেবল একটি সুবিধাজনক মোড়ক যা প্রকৃতপক্ষে প্রক্রিয়া শুরু করে এবং থামায়। আপনি যখন এটি ম্যানুয়ালি চালাবেন তখন তার থেকে আলাদা কী হচ্ছে তা দেখার জন্য আপনাকে সেই স্ক্রিপ্টটি দেখতে হবে। এর মতো কিছু bash -x /etc/init.d/postgresql startকরা আপনার গবেষণা শুরু করার জন্য ভাল জায়গা হতে পারে।
ক্রিস্টোফার ক্যাসেল 23

3
ধন্যবাদ, আমি এটিকে বাছাই করেছি, ডেটা ডিরেক্টরিতে অনুমতি সংক্রান্ত সমস্যা ছিল, এবং মনে হয় পরিষেবাটিও
সুডোর

1
Lifesaver হয়। পোস্টগ্রিএসকিউএল কেন শুরু হচ্ছে না তা বলার জন্য আমি অন্য কোনও উপায় খুঁজে পেলাম না, কারণ এটি অনুমতি সমস্যার কারণে এটির ডেটা ডিরেক্টরিতে অ্যাক্সেস করতে পারেনি।
অ্যারন লরিঞ্জ ২

1
আমার জন্য এটি কনফিগারেশনের অনুমতি ছিল / etc / postgresql /
ইউজিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.