নিম্নলিখিত নিয়মটি ব্যবহার করে আমি প্রতিদিন ভিত্তিতে pg_dump শুরু করার জন্য ক্রোন কনফিগার করেছি:
# xyz database backups:
00 01 * * * root umask 077 && pg_dump --user=xyz_system xyz | gzip > /var/xyz/backup/db/xyz/`date -u +\%Y\%m\%dT\%H\%M\%S`.gz
মূলত, এটি কাজ করে। ডাটাবেস তুলনামূলকভাবে দ্রুত এবং তাত্পর্যপূর্ণভাবে বৃদ্ধি পায় (তবে সূচকটি খুব বড় নয়)। বর্তমানে গিজিপড ডাম্পটি প্রায় 160 এমবি লাগে। ডাটাবেস নষ্ট হয়ে গেলে সিস্টেম ক্রল করা শুরু করে। top
কমান্ডটি ব্যবহার করে আমি যে লোড এভারেজটি দেখেছি তা প্রায় ছিল 200, 200, 180
। মূলত সার্ভারটি খুব কমই প্রতিক্রিয়াশীল।
প্রথম প্রশ্ন তা নির্ধারণ করতে কিভাবে যেখানে বোতলের হয়। ভারী আই / ও অপারেশনের কারণে কি খারাপ কর্মক্ষমতা দেখা দেয়? এটি কি টেবিল লকিংয়ের সমস্যার কারণে ঘটে? এটা কি কোনও স্মৃতির সমস্যা? pg_dump
কমান্ডের আউটপুট পাইপ করা হয় gzip
। এটি কি অনুক্রমিক, অর্থাত্ পুরো ডাম্পটি মেমোরিতে স্থাপন করা হয় (অদলবদল করতে সমস্যা?) এবং তারপরে সংক্ষেপিত বা সমবর্তী (যেমন জিজিপ এটি পায় যা সংকোচিত করে এবং আরও অপেক্ষা করে)? এটি অন্য কোনও কারণের কারণে হতে পারে?
দ্বিতীয় প্রশ্ন সিস্টেম কীভাবে প্রধান কাজগুলির জন্য ডাম্পিং অপারেশন কম অনধিকারমূলক করা হয়। যতদূর আমি জিনিসগুলি বুঝতে পারি, ডাটাবেসের অখণ্ডতার কারণে ডাম্প খুব বেশি সময় নিতে পারে না। এখানে টেবিল রাইটিং লকস রয়েছে etc.
তৃতীয় প্রশ্ন : এটা ইতিমধ্যে আরো উন্নত ডাটাবেসের কনফিগারেশন সম্বন্ধে জানতে সময়? সিস্টেম ঠিকঠাক কাজ করে, যখন ডাটাবেস ব্যাকআপ সঞ্চালিত হয় না, তবে সম্ভবত ডিবি ডাম্পিং ইস্যুটি আগত সমস্যার প্রথম লক্ষণ?
pg_dump
100% সিপিইউ নিয়ে সমস্যা ছিল এবং এটি জিপিপ থেকে ছিল।pg_dump --compress=0
উবুন্টু 16.04-এ আমার জন্য এটি সমাধান করা নির্দিষ্ট করে। ব্যাকআপগুলি পরে খুব দ্রুত ছিল। পাত্রে gzip সংক্ষেপণের জন্য দেখুন; আপনি যা আশা করেন তা নাও করতে পারে।