এসকিউএল সার্ভারটি স্বয়ংক্রিয়-সঙ্কুচিত করা কি নিরাপদ?


44

অনেকগুলি এসকিউএল সার্ভার অপশন রয়েছে যা ডেটাবেসগুলির জন্য সক্ষম করা যেতে পারে এবং সর্বাধিক ভুল বোঝে একটি হ'ল স্বয়ংক্রিয়ভাবে সঙ্কুচিত। এটি নিরাপদ? তা না হলে কেন?

উত্তর:


70

(আমি প্রথমে একটি নিয়মিত প্রশ্ন হিসাবে জিজ্ঞাসা করেছি কিন্তু তারপর সঠিক পদ্ধতিটি খুঁজে পেয়েছি - ধন্যবাদ ব্রেন্টো)

কখনো না.

আমি সার্ভারফল্টে এখন এটি বেশ কয়েকবার এসেছি এবং কিছু ভাল পরামর্শ দিয়ে একটি দুর্দান্ত প্রশস্ত শ্রোতাদের কাছে পৌঁছতে চাই। লোকেরা যদি এইভাবে কাজ করার পথে ভ্রান্ত হয় তবে নীচে নামুন এবং আমি এটিকে আনন্দের সাথে সরিয়ে দেব।

সক্ষম করার জন্য অটো-সঙ্কোচিত হওয়া খুব সাধারণ একটি ডাটাবেস সেটিং। এটি একটি ভাল ধারণা বলে মনে হচ্ছে - ডাটাবেস থেকে অতিরিক্ত স্থান সরিয়ে ফেলুন। সেখানে প্রচুর 'অনৈচ্ছিক ডিবিএ' রয়েছে (মনে করুন টিএফএস, শেয়ারপয়েন্ট, বিজটালক, বা কেবল নিয়মিত পুরানো এসকিউএল সার্ভার) যারা জানেন না যে অটো-সঙ্কোচিত হওয়া ইতিবাচকভাবে খারাপ।

মাইক্রোসফ্টে থাকাকালীন আমি এসকিউএল সার্ভার স্টোরেজ ইঞ্জিনের মালিক ছিলাম এবং অটো-সঙ্কোচিত বৈশিষ্ট্যটি সরিয়ে দেওয়ার চেষ্টা করেছি, তবে এটি পিছনে সামঞ্জস্যের জন্য থাকতে হয়েছিল।

অটো সংকুচিত কেন এত খারাপ?

ডাটাবেসটি কেবল আবার বাড়ার সম্ভাবনা রয়েছে, তবে কেন এটি সঙ্কুচিত করবেন?

  1. সঙ্কুচিত-বৃদ্ধি-সঙ্কুচিত হওয়া-বৃদ্ধি ফাইল-সিস্টেমের স্তরের বিভাজন ঘটায় এবং প্রচুর সংস্থান গ্রহণ করে।
  2. কিক-ইন করার সময় আপনি নিয়ন্ত্রণ করতে পারবেন না (যদিও এটি নিয়মিত-ইশ)
  3. এটি প্রচুর সংস্থান ব্যবহার করে। ডাটাবেসে পৃষ্ঠাগুলি স্থানান্তর করতে সিপিইউ লাগে, প্রচুর আইও লাগে এবং প্রচুর লেনদেনের লগ তৈরি করে।
  4. এখানে আসল কিকারটি রয়েছে: ডেটা ফাইল সঙ্কুচিত (অটো- না হয়) এর ফলে বিশাল সূচক বিভাজন ঘটে, যা খারাপ কর্মক্ষমতা বাড়ে।

কিছুক্ষণ আগে আমি একটি ব্লগ পোস্ট করেছি যার একটি এসকিউএল স্ক্রিপ্ট রয়েছে যা এতে সমস্যাগুলি দেখায় এবং এটি আরও বিশদে ব্যাখ্যা করে। দেখুন অটো- সঙ্কুচিত - এটি চালু বন্ধ! (আমার ব্লগে এর মতো কোনও বিজ্ঞাপন বা জাঙ্ক নেই)। লগ ফাইল সঙ্কুচিত করার সাথে এটিকে বিভ্রান্ত করবেন না, যা উপলক্ষে দরকারী এবং প্রয়োজনীয়।

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

সম্পাদনা: আমার এটিকে দ্বিতীয় উত্তরের মাধ্যমে মনে করিয়ে দেওয়া উচিত - একটি সাধারণ ধারণা রয়েছে যে সঙ্কুচিত অপারেশনে বাধা দেওয়া দুর্নীতির কারণ হতে পারে। না এটা হবে না। আমি এসকিউএল সার্ভারে সঙ্কুচিত কোডের মালিক ছিলাম - এটি বর্তমান পৃষ্ঠার সরানোটিকে ব্যাহত করে যদি এটি করছে তবে এটি পিছনে ফিরে আসে।

আশাকরি এটা সাহায্য করবে!


সঙ্কুচিত হওয়ার পরে ঠিক কীভাবে আবার ইনডেক্স করতে পারবেন?
ল্যান্স রবার্টস

4
রিইনডেক্স নয় কারণ সে ফাইলটি আবার বাড়বে (পুরানোটি ফেলে দেওয়ার আগে নতুন সূচক তৈরি করে), তবে পুনর্গঠন করে (হয় আমার পুরানো ডিবিসিসি ইন্ডেক্সডেফ্র্যাগ বা নতুন অল্টার ইন্ডেক্সের মাধ্যমে ... পুনর্নির্মাণ) ব্যয়ক্রমে বিভাজনকে বাছাই করবে আরও আইও, সিপিইউ, লগিং ...
পল রান্ডাল

আমি লক্ষ্য করেছি যে অটোশ্রিংক অপসারণের পরে স্রিরকারের মেমরির ব্যবহার বেশি।
ব্যবহারকারী 193655

4

অবশ্যই, পল ঠিক বলেছেন।

সমস্ত ডিবি এবং তাদের স্বতঃলিঙ্ক সেটিং দেখুন। আপনার কাছে যদি প্রচুর ডাটাবেস থাকে তবে একটি ছিটিয়ে যাবে will

sp_msforeachdb  @command1 = 'Select ''[?]'',DATABASEPROPERTYEX(''?'',''IsAutoShrink'')'

এটি কি ডিএমভির কোথাও .... আমি অবাক হই।


2
সিস.ড্যাটাবেসগুলির একটি ক্ষেত্র রয়েছে_আউটো_শ্রিংক (এবং এটি_আউটো-বন্ধ, is_auto_update_stats, ইত্যাদি)
পল রান্ডাল

বিস্ময়কর তোমার দর্শন লগ করা googling: আমি কিভাবে একটি প্রতিবেদন সাহায্য আমাদের জানান যা autoshrink হিসাবে কনফিগার এবং আপনার কোড চালনাকারী ভাল এবং আমাদের জন্য সব ডিবি থেকে ভাল রিপোর্ট নির্মাণের DBS ছিল
সাবের tabatabaee yazdi

2

এটি "অনিরাপদ" নয় - এটি কোনও ক্ষতি করবে না won't

তবে এটি উত্পাদন পরিবেশের জন্য প্রস্তাবিত নয় যেখানে ডাটাবেসগুলি সেই অনুরোধগুলি কার্যকর হতে আরও বেশি সময় নিতে অনুরোধের স্তুপ করার আগে একটি ব্যয়বহুল পুনঃস্থাপনের অনুশীলন শুরু করার সিদ্ধান্ত নিতে পারে। ব্যাকআপের মতো অন্যান্য রক্ষণাবেক্ষণ ক্রিয়াকলাপগুলির সাথে সময়সূচী সঙ্কুচিত ক্রিয়াকলাপগুলি ব্যবহার করা থেকে আপনি আরও ভাল are (আসলে, ব্যাকআপগুলি পরে - এটি লেনদেন থেকে আরও লম্বা হবে)। বা বৃদ্ধির সমস্যা না থাকলে কেবল সঙ্কুচিত না - অব্যবহৃত বরাদ্দ স্থান নির্দিষ্ট অনুপাত বা নির্দিষ্ট আকারের বাইরে কখন বাড়বে তা জানতে আপনি সর্বদা একটি মনিটর সেটআপ করতে পারেন।

আইআরসি বিকল্পটি এক্সপ্রেস বাদে সমস্ত এমএসএসকিউএল সংস্করণে থাকা সমস্ত ডাটাবেসের জন্য ডিফল্টরূপে বন্ধ থাকে।


2
সঙ্কুচিতদের নির্ধারিত করা উচিত নয় - তাদের সৃষ্ট সমস্যার কারণে এগুলি সত্যিই বিরল অপারেশন হওয়া উচিত। ব্যাকআপের পরে সঙ্কুচিত করার বিষয়ে আপনার মন্তব্য আমি বুঝতে পারি না - সঙ্কুচিত অপারেশন দ্বারা উত্পন্ন লগ রেকর্ডগুলি পরবর্তী লেনদেনের লগ ব্যাকআপ গ্রহণ করবে আপনি তা কখনই করবেন না বা অন্য কোন ব্যাকআপ গ্রহণ করবেন না। ধন্যবাদ
পল রান্ডাল

1

টেকনেটে একটি শ্বেতপত্র রয়েছে যা এসকিউএল রক্ষণাবেক্ষণকে আরও বিশদভাবে ব্যাখ্যা করে।

http://technet.microsoft.com/en-us/library/cc262731.aspx


দুর্ভাগ্যক্রমে যে শ্বেতপত্রটি কেবল শেয়ারপয়েন্ট ইনস্টলশনগুলিতে লক্ষ্য করা যায় এবং এতে আসলে কিছু ত্রুটি থাকে just আমি সবেমাত্র হোয়াইটপেপারের লেখক বিল বেয়ারের সাথে বর্তমান শেয়ারপয়েন্ট এমসিএম ক্লাসটি পড়ানোর জন্য সময় ব্যয় করেছি।
পল রান্ডাল

3
ডাটাবেস রক্ষণাবেক্ষণের জন্য একটি ভাল সাধারণ ভূমিকাটি আমার কার্যকরী ডেটাবেস রক্ষণাবেক্ষণ - টেকনিকট.মাইক্রোসফট / ম্যাগাজিন / সিসি 671165.aspx বিষয়ক টেকনেট ম্যাগাজিন প্রবন্ধে ।
পল রান্ডাল

1

আমি অটোগ্রো এবং অটোশ্রিংক উভয়ই সক্ষম একটি এসকিউএল সার্ভার দেখেছি। এই (অপেক্ষাকৃত শক্তিশালী) সার্ভারটি ভীষণ ধীর ছিল, কারণ সারা দিন এটি সমস্তই সংকুচিত হয়েছিল এবং ডেটাবেস ফাইলগুলি বাড়িয়েছিল। অটোশ্রিংক দরকারী হতে পারে তবে আমি দুটি বিষয় সুপারিশ করব:

  1. ডিফল্টরূপে অটোশ্রিংকে বন্ধ করুন।
  2. আপনার সার্ভারের কনফিগারেশনের ডকুমেন্ট করুন, যাতে আপনি জানতে পারেন কোথায় অটোগ্রো এবং অটোশ্রিংক সক্ষম রয়েছে এবং তারা কোথায় নেই।

1

আমাকে কেবলমাত্র একটি ডাটাবেস সঙ্কুচিত করতে বাধ্য করা হয়েছিল হ'ল কম ডিস্কের জায়গা (প্রোডাকশন ডেটাবেস ধরে রাখতে অপর্যাপ্ত) দিয়ে একটি পরীক্ষা সার্ভারে একটি অনুলিপি রিফ্রেশ করা।

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


1

এই ভিডিও টিউটোরিয়ালটিও দেখুন ...

পল রান্ডাল দেখান যে কীভাবে সঙ্কুচিত হবে এবং স্বয়ংক্রিয়ভাবে সঙ্কুচিত হওয়া আপনার ডেটাবেস http://wtv.watchtechvideos.com/topic194.html এর জন্য গুরুতর খণ্ড সমস্যা তৈরি করতে পারে

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