সরল পুনরুদ্ধারে স্যুইচ করার সময় লেনদেন লগ রক্ষণাবেক্ষণ


9

পটভূমি:

450+ ডাটাবেস সহ আমি সম্প্রতি 50+ এসকিউএল সার্ভার উত্তরাধিকার সূত্রে পেয়েছি। রাতের ব্যাকআপগুলি মোটামুটি 8 টিবি এবং এটি বলা বাহুল্য, আমরা আমাদের ডিস্কের চেয়ে বেশি ডিস্ক স্পেস ব্যবহার করছি। সমস্ত ডাটাবেস সম্পূর্ণ পুনরুদ্ধারে সেট করা হয়েছে এবং লেনদেন লগগুলি কখনও ব্যাক আপ করা হয়নি। আমি সমস্ত এসকিউএল সার্ভারের মধ্যে দিয়ে গিয়েছি এবং স্বল্প অগ্রাধিকারযুক্তগুলি চিহ্নিত করেছি যেগুলিতে কেবল একটি রাতের ব্যাকআপ প্রয়োজন এবং যেখানে ডেটা হ্রাসের একটি দিন গ্রহণযোগ্য।

প্রশ্ন:

আমি SIMPLEপুনরুদ্ধার মোডে প্রচুর নিম্ন অগ্রাধিকারের ডাটাবেসগুলি স্যুইচ করছি FULL। বিদ্যমান লেনদেনের লগগুলি কেটে ফেলা হবে (যখন চেকপয়েন্ট তৈরি করা হবে)? বিদ্যমান কিছু লেনদেনের লগগুলি 50-100 জিবি; এগিয়ে যাওয়ার লক্ষ্যে আমার কী সেগুলি সঙ্কুচিত করা উচিত তা নির্ধারণে সর্বোত্তম পন্থা কী? আমি অবশ্যই তাদের এত বড় রাখতে চাই না। অথবা, সময়ের সাথে সাথে তারা নিজেরাই সঙ্কুচিত হবে (আমি মনে করি না তারা তা করবে)?

উত্তর:


2

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

LDFফাইলটি যতটা সম্ভব ছোট আকারে সঙ্কুচিত করতে , এখানে কিম্বারলি ট্রিপ্প প্রদত্ত পদক্ষেপগুলি অনুসরণ করুন: আরও ভাল লেনদেন লগের মাধ্যমে 8 পদক্ষেপ

  1. ডাটাবেসে কম ক্রিয়াকলাপ থাকার সময় অপেক্ষা করুন

  2. এসএসএমএসে চালান:

    DBCC SHRINKFILE(transaction_log_logical_filename, TRUNCATEONLY)
  3. লেনদেন লগ ফাইলের আকার পরিবর্তন করুন:

    ALTER DATABASE db_name
    MODIFY FILE ( NAME = transaction_log_logical_filename, SIZE = new_size)

1
আমি লগ ফাইলগুলিকে সঙ্কুচিত করার পরামর্শ দেব না কারণ এটি ভিএলএফ বিভাজন ঘটায় এবং লগ লগ করার সময় পুরো ডাটাবেস কাজের চাপ বন্ধ হয়ে যায়, কারণ লেনদেন লগ ফাইল তাত্ক্ষণিক সূচনা ব্যবহার করতে পারে না
কিন শাহ

9

আমি পুরো পুনরুদ্ধার মোড থেকে প্রচুর ডাটাবেস সিম্পল রিকভারি মোডে স্যুইচ করছি (টি-লগস এবং পয়েন্ট-ইন-টাইম পুনরুদ্ধারের প্রয়োজন নেই)। বিদ্যমান লেনদেনের লগগুলি কেটে ফেলা হবে (যখন চেকপয়েন্ট তৈরি করা হবে)?

সাধারণ পুনরুদ্ধারের মডেলটিতে, ডাটাবেস ইঞ্জিনটি স্বয়ংক্রিয় চেকপয়েন্টগুলি জারি করবে এবং এর ফ্রিকোয়েন্সিটি পুনরুদ্ধারের ব্যবধান (অ্যাডভান্স সার্ভার কনফিগারেশন সেটিংস) দ্বারা নির্ধারিত হয় বা লগ 70% পূর্ণ হয়ে যায়।

আপনার যদি দীর্ঘ দীর্ঘ চলমান লেনদেন না ঘটে যা লগ কাটাতে বিলম্বিত করে, একটি স্বয়ংক্রিয় চেকপয়েন্ট টি-লগের অব্যবহৃত অংশটি কেটে ফেলবে।

বিদ্যমান কিছু লেনদেনের লগগুলি 50-100 গিগাবাইটের, আমি কী এগিয়ে চলেছি সে উদ্দেশ্যে কী সেগুলি সঙ্কুচিত করা উচিত তা নির্ধারণ করার ক্ষেত্রে সর্বোত্তম পন্থাটি কী। আমি অবশ্যই তাদের এত বড় রাখতে চাই না।

আপনার কাছে যদি 50-100 জিবি টি-লগ সহ সেই ডাটাবেসের জন্য সম্পূর্ণ ডাটাবেস পুনরুদ্ধার মডেল সেট থাকে তবে আপনাকে ঘন ঘন টি-লগ ব্যাকআপ করা শুরু করতে হবে। সম্পূর্ণ পুনরুদ্ধারের মডেলটিতে মনে রাখবেন, একবার লগ ব্যাকআপ চেইন প্রতিষ্ঠিত হয়ে গেলে, এমনকি স্বয়ংক্রিয় চেকপয়েন্টগুলি লগকে কেটে ফেলতে পারে না।

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

অথবা, সময়ের সাথে সাথে তারা নিজেরাই সঙ্কুচিত হবে (আমি মনে করি না তারা তা করবে)?

@ টমটম যেমন উল্লেখ করেছে, এটি একটি ম্যানুয়াল অপারেশন।

পড়া :


2

S এর অনেক প্রশ্নের উত্তর আমাদের দেওয়া যাবে না। এক টুকরো স্ট্রিং কত দিন?

বিদ্যমান কিছু লেনদেনের লগগুলি 50-100 গিগাবাইটের, আমি কী এগিয়ে চলেছি সে উদ্দেশ্যে কী সেগুলি সঙ্কুচিত করা উচিত তা নির্ধারণ করার ক্ষেত্রে সর্বোত্তম পন্থাটি কী।

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

রাতের ব্যাকআপগুলি মোটামুটি 8 টিবি এবং এটি বলা বাহুল্য, আমরা আমাদের ডিস্কের চেয়ে বেশি ডিস্ক স্পেস ব্যবহার করছি।

তাহলে তাদের সরল করে কেন? আমি বলতে চাই, গুরুত্ব সহকারে।

সমস্ত ডাটাবেস সম্পূর্ণ পুনরুদ্ধারে সেট করা হয়েছে এবং লেনদেন লগগুলি কখনও ব্যাক আপ করা হয়নি।

একটি সামান্য যুক্তি আপনাকে বলবে যে igf আপনি যদি একবারে তাদের কেটে ফেলেন তবে আপনি সম্ভবত তাদের ব্যাক আপ করার জন্য প্রচুর কম জায়গা ব্যবহার করবেন। ফলাফলটি হতে পারে যে আপনি তাদের পুরো পুনরুদ্ধার মোডে রাখতে পারেন। প্রথমে চেষ্টা করে দেখুন। যদি সেগুলি কম পরিমাণে হয় তবে লগ ব্যাকআপগুলি ভবিষ্যতে অনেক ছোট হবে।

আমি সমস্ত এসকিউএল সার্ভারের মধ্যে দিয়ে গিয়েছি এবং স্বল্প অগ্রাধিকারগুলি সনাক্ত করেছি যা কেবলমাত্র একটি রাতের ব্যাকআপ প্রয়োজন এবং একটি বিপর্যয়ের পরেও ডেটা লোকসানের কিছু দিনের প্রয়োজন হবে না (ফ্যাক্স ডাটাবেস এবং এর মতো জিনিস)।

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

অথবা, সময়ের সাথে সাথে তারা নিজেরাই সঙ্কুচিত হবে (আমি মনে করি না তারা তা করবে)?

না এবং তাদের এটি করা উচিত নয়। লগ রি-সাইজিং হ'ল ম্যানুয়াল অপারেশন কম ভলিউম ডেটাবেস বাদে।


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