একটি পুনর্গঠন এবং সঙ্কোচ সত্যই সুপারিশ করা হয় না।
আপনি যদি ডেটাবেস অফলাইনে পরিবেশন করা অ্যাপ্লিকেশনগুলি গ্রহণ করতে পারেন তবে সঙ্কোচনের আগে আপনি সমস্ত সূচি এবং প্রাথমিক / বিদেশী কী সীমাবদ্ধতাগুলি সরিয়ে প্রক্রিয়াটি দ্রুত করতে এবং সূচি খণ্ডকে হ্রাস করতে পারবেন (এর অর্থ এই যে কেবলমাত্র হিসাবে স্থানান্তরিত করতে কম ডেটা রয়েছে ডেটা পৃষ্ঠাগুলি এখন অস্তিত্বহীন সূচী পৃষ্ঠাগুলি পরিবর্তিত হবে না, প্রক্রিয়াটি বাড়িয়ে তুলবে) তারপরে সমস্ত সূচি এবং কীগুলি পুনরায় তৈরি করুন।
সঙ্কুচিত হওয়ার পরে সূচীগুলি পুনরুদ্ধার করার অর্থ তাদের তাত্পর্যপূর্ণভাবে টুকরো টুকরো হওয়া উচিত নয় এবং সঙ্কুচিত হওয়ার পরে এগুলি পুনর্নির্মাণের অর্থ তাদের পুনর্নির্মাণের অর্থ ফাইলগুলির মধ্যে পৃষ্ঠা বরাদ্দে অনেকগুলি ছোট "গর্ত" ছাড়বে না যা পরবর্তীতে খণ্ডিত হতে পারে invite
আপনি যদি অ্যাপ্লিকেশনগুলিকে অফলাইন করতে পারেন তবে অন্য একটি বিকল্প হ'ল একই কাঠামোর একটি নতুন ডাটাবেসে সমস্ত ডেটা স্থানান্তর করা। যদি আপনার বিল্ড প্রক্রিয়াটি দৃ is় হয় তবে আপনার বর্তমান ডিবি থেকে কোনওটি তৈরি না করে দ্রুত সেই ফাঁকা ডিবি তৈরি করতে সক্ষম হওয়া উচিত (বর্তমানের একটি ব্যাকআপ পুনরুদ্ধার করুন, টেবিলের সমস্ত বিষয়বস্তু ছাঁটা / মুছে ফেলুন এবং একটি সম্পূর্ণ সঙ্কুচিত করুন)।
আপনি এখনও সমস্ত সূচকে গন্তব্যে ফেলে দিতে পারেন এবং সেগুলি পরে পুনরায় তৈরি করতে চাইতে পারেন কারণ প্রচুর সূচী তথ্য (এই ক্ষেত্রে এটির 100%) পরিবর্তন করার সময় এটি আরও কার্যকর হতে পারে। অনুলিপি প্রক্রিয়াটি দ্রুত করার জন্য, উত্সটিতে বিভিন্ন শারীরিক ড্রাইভে গন্তব্য ডাটাবেসের ডেটাফাইলে গুলি ব্যবহার করুন (আপনি যদি এসএসডি ব্যবহার না করেন তবে আপনার মাথা নড়াচড়া কমানোর বিষয়ে যত্ন নেওয়া দরকার না), আপনি এগুলি সরাতে পারেন উত্স স্থানে যখন আপনার কাজ শেষ হয়।
এছাড়াও, যদি গন্তব্যটিকে নতুন হিসাবে তৈরি করা হয় (উত্সের অনুলিপিটি ফাঁকা না করে) এটি একটি প্রাথমিক আকারের সাথে তৈরি করে যা সমস্ত বর্তমান ডেটা এবং আরও কয়েক মাসের বৃদ্ধির পরিমাণ ধারণ করে - যা ডেটা অনুলিপিটিকে আবার আরও দ্রুত তৈরি করবে এটি পুরো প্রক্রিয়া জুড়ে এখন এবং নতুন জায়গা বরাদ্দ করা হবে না।
এটি সঙ্কুচিত ব্যবহারের চেয়ে আরও ভাল হতে পারে কারণ একটি তাজা ডাটাবেসে ডেটা স্থানান্তর করা সঙ্কুচিত ক্রিয়াকলাপের অভিযুক্ত ক্রিয়াটির প্রতিরূপ তৈরি করে তবে সম্ভাব্যত অনেক কম খণ্ডিত (যা পুনর্গঠন-সঙ্কোচনের অযৌক্তিক পরিণতি)। একটি সঙ্কোচিত ফাইলের শেষের কাছাকাছি থেকে ব্লকগুলি নিয়ে যায় এবং এগুলিকে প্রথম স্পেসে রেখে দেয় প্রারম্ভিক নিকটবর্তী সম্পর্কিত ডেটা একসাথে রাখার কোনও প্রচেষ্টা না করে।
আমি সন্দেহ করি যে ফলাফলটি আরও কার্যকর স্থান-ভিত্তিক হবে কারণ এর পরে কম অংশ-ব্যবহৃত পৃষ্ঠা হওয়ার সম্ভাবনা রয়েছে। একটি সঙ্কোচন কেবল অংশ-ব্যবহৃত পৃষ্ঠাগুলি চারপাশে সরিয়ে ফেলবে, তথ্য স্থানান্তরিত হওয়ার ফলে পূর্ণ পৃষ্ঠাগুলির সম্ভাবনা বেশি থাকে বিশেষত যদি আপনি কোনও টেবিলের ক্লাস্টার্ড কী / সূচক (যেখানে একটি টেবিলের একটি থাকে) অনুসারে গন্তব্যে প্রবেশ করেন এবং অন্যান্য সূচী তৈরি করেন ডেটা সব স্থানান্তরিত করার পরে।
অবশ্যই আপনি যদি অ্যাপ্লিকেশনগুলিকে একেবারে অফলাইনে না নিতে পারেন তবে কেবল একটি সঙ্কুচিত করা আপনার একমাত্র বিকল্প তাই যদি আপনার সত্যিকারের জায়গার সাথে পুনরায় দাবি করার প্রয়োজন হয়। আপনার ডেটা, অ্যাক্সেস নিদর্শন, সাধারণ কার্যকারিতা আকার, সার্ভারে কতটা র্যাম রয়েছে তার উপর নির্ভর করে আরও অতিরিক্ত অভ্যন্তরীণ খণ্ডগুলি শেষ পর্যন্ত তাত্পর্যপূর্ণ নাও হতে পারে।
অনুলিপি অপারেশনের জন্য, এসএসআইএস বা বেস টি-এসকিউএল ঠিক একইভাবে কাজ করবে (এসএসআইএস বিকল্পটি কম দক্ষ হতে পারে তবে পরে বজায় রাখা সম্ভাব্যতর সহজ)। যদি আপনি সূচকগুলি সহ এফকে সম্পর্কগুলি তৈরি করেন তবে আপনি প্রতিটি টেবিলের জন্য একটি সহজ "উভয় ক্ষেত্রেই অনুলিপি" করতে পারেন। অবশ্যই এক সময়ের জন্য, একটি সঙ্কুচিত + পুনর্গঠন সম্ভবত খুব ভাল তবে আমি কেবলমাত্র লোকজনকে নিয়মিত সঙ্কুচিত বিবেচনা না করে ভয় দেখাতে চাই! (আমি জানি লোকেরা প্রতিদিন তাদের শিডিউল করে)।