নেটওয়ার্ক ডাউন ডাউনটাইম সহ একটি বিশাল এসকিউএল সার্ভার ডাটাবেস স্থানান্তরিত করার সেরা উপায়


22

সমস্যা সংজ্ঞা

আমাদের ডাটাবেস সার্ভারটি অন্য একটি ডাটাসেন্টারে স্থানান্তরিত হওয়া দরকার। এটি মাইক্রোসফ্ট এসকিউএল সার্ভার ২০১২ এন্টারপ্রাইজ (-৪-বিট) এ চলে এবং প্রায় ২ টিবি এবং ১ টিবি-র দুটি ডাটাবেস থাকে।

এটির জন্য কোনও ডাউনটাইম কম রাখাই আদর্শ হবে।

কাজের চাপ

এই ডাটাবেসগুলি একটি নেট ওয়েবসাইটের জন্য ব্যবহৃত হয় এবং ক্রমাগত আপডেট হয়।

সপ্তাহান্তে এটি না পাওয়া যদিও গ্রহণযোগ্য হবে। নতুনটিতে স্যুইচ না হওয়া পর্যন্ত বর্তমানে ব্যবহৃত ডিবি ব্যবহারের ক্ষেত্রে একমাত্র থাকবে।

ডিবি আপডেট হচ্ছে না তা নিশ্চিত করে নতুন ডিবি সার্ভারের দিকে ইঙ্গিত করার জন্য কেবল ডিএনএস এন্ট্রি পরিবর্তন করে সেই স্যুইচটি আদর্শভাবে তৈরি করা হবে।

এছাড়াও, এই অপারেশনটি গ্রহণ করা সময় যতক্ষণ না একটি সার্ভার থেকে অন্য সার্ভারের (ডাউনটাইম) স্যুইচ কম রাখে ততক্ষণ তা বিবেচনা করে না।

পদ্ধতির বিবেচনা

  • ব্যাকআপ এবং পুনঃস্থাপন

    এটি অতীতে করা হয়েছে তবে এটি একটি অভ্যন্তরীণ নেটওয়ার্কের মাধ্যমে সম্পন্ন হওয়া সত্ত্বেও একটি উচ্চ ডাউনটাইম জড়িত ছিল, ইন্টারনেটের চেয়ে বেশি দক্ষতার সাথে

  • লগ শিপিং

    আমি যতদূর বুঝতে পেরেছি, এই পদ্ধতিটি কোনও মাস্টার / স্লেভকে কনফিগার করে এবং মাস্টার ডিবি-এর একটি অনুলিপি কেবল তার পাঠকদের কাছে স্থানান্তরিত করার মাধ্যমে ডাউনটাইম হ্রাস করবে। উপরে উল্লিখিত হিসাবে, ক্রীতদাসের কোনও অ্যাক্সেস প্রয়োজন হবে না এবং আমাদের কেবলমাত্র ডেটা দুর্নীতি ছাড়াই মাস্টার ডিবি-এর প্রতিরূপ তৈরি করার উপায় প্রয়োজন।

    এটি সম্পদ ব্যবহারের ক্ষেত্রেও বেশ দক্ষ বলে মনে হয় এবং এটি মাস্টার কর্মক্ষেত্রে খুব বেশি প্রভাব ফেলবে না।

    আমি এই পদ্ধতির সম্পর্কে ভুল হতে পারে তাই আমাকে সংশোধন করতে নির্দ্বিধায়।

  • ডাটাবেস মিররিং

    আমি এই পদ্ধতির সম্পর্কে খুব সচেতন নই তবে এটি একটি বৈধ বিকল্পের মতো বলে মনে হচ্ছে। রিয়েল টাইম সিঙ্ক এবং মাস্টারের কার্য সম্পাদন করার দরকার নেই তাই অ্যাসিক্রোনাসই এই পথটি বেছে নেওয়া হলে যাওয়ার পথ হবে।

  • অন্যান্য অপশন?

    সেই সার্ভারটি খালি ধাতব হার্ডওয়্যারে সরাসরি চলে তাই নিম্ন স্তরের সমাধানগুলি দুর্ভাগ্যক্রমে কোনও বিকল্প নয়। এটি করার আরও ভাল উপায় আছে?

সীমাবদ্ধতাসমূহ

বর্ণিত হিসাবে, এই ডাটাবেসগুলি বজায় রাখা শক্ত যেখানে পয়েন্টটি বেশ বড় তবে এটি অন্য একটি সমস্যা।

এসকিউএল সার্ভারের সংস্করণগুলি একই হবে (মাইক্রোসফ্ট এসকিউএল সার্ভার 2012 এন্টারপ্রাইজ 64-বিট)।

এটি সম্ভবত দুটি ইন্টারনেটের মাধ্যমে দুটি ডাটাসেন্টারের মধ্যে নেটওয়ার্কের মাধ্যমে স্থানান্তর করতে হবে। প্রাথমিক সিঙ্কের জন্য এক সাইট থেকে অন্য সাইটে ডিস্ক পাঠানো দুর্ভাগ্যক্রমে কোনও বিকল্প নয়। স্থানান্তরটির জন্য এক ধরণের সুরক্ষা রাখা আদর্শ হবে তবে আমরা এই পরিস্থিতির সেরাটি করব।

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

উত্তর:


20

সোজা ব্যাকআপ এবং পুনরুদ্ধার স্পষ্টতই বাহির। আমি কোনও ধরণের প্রতিলিপি বিবেচনা করব না।

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

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

যদি ওয়েব অ্যাপ্লিকেশন ডেটাবেস নিয়ে চলেছে, যেহেতু ডিএনএস প্রচার করতে কিছুটা সময় নিতে পারে, তাই আপনি পুরনো অ্যাপ্লিকেশনটির সংযোগের স্ট্রিংগুলিতে নতুন ডেটাবেস সার্ভারের আইপি-তে এটি লেখার জন্য এটি পরিবর্তন করতে একটি সুইচ তৈরি করতে চাইতে পারেন , যেহেতু - স্যুইচ করার পরেও, এবং আপনার টিটিএল সেটিংসটি কঠোর হলেও - ক্লায়েন্টরা পুরানো ওয়েব সার্ভারগুলিতে আঘাত চালিয়ে যেতে পারে। এটি তাদের সরবরাহকারীরা আপনার টিটিএলগুলিকে কতটা সম্মান দেয় তার উপর নির্ভর করে।


16

আমি সম্প্রতি মিরর ব্যবহার করে 6 টি ডাটাবেস জুড়ে 15tb স্থানান্তরিত করেছি। খুব সহজ এবং ব্যর্থতার মাত্র কয়েক সেকেন্ড সময় নিয়ে নিখুঁতভাবে কাজ করে।

সম্পাদনা:

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

প্রক্রিয়াটি খুব সাধারণ ছিল।

  1. উইকএন্ডের পূর্ণ ব্যাকআপগুলি শেষ হওয়ার জন্য অপেক্ষা করুন
  2. নতুন সার্ভারগুলিতে কোনও পুনরুদ্ধার না করে পুনরুদ্ধার করুন
  3. যখন এগুলি পুনরুদ্ধার সম্পূর্ণ হয়, ব্যাকআপগুলিতে বিরতি দিন
  4. কোনও পুনরুদ্ধার না রেখে মূল থেকে সর্বশেষতম লগ ব্যাকআপ পর্যন্ত একটি অতিরিক্ত পুনরুদ্ধার চালান
  5. সমস্ত ছয় জুড়ে মিররিং শুরু করুন
  6. ব্যাকআপগুলি আবার শুরু করুন

নেটওয়ার্কে লোড কমাতে আমরা তাদের ব্যর্থ করতে প্রস্তুত না হওয়া পর্যন্ত আমি এগুলি অ্যাসিক্রোনাস মোডে রেখে যাওয়া বেছে নিয়েছি etc. এটি সত্য হতে খুঁজে। ম্যানুয়াল ফেইলওভারের আগে তাদের সিঙ্ক্রোনাস মোডে স্যুইচ করতে হবে।

পরবর্তী রক্ষণাবেক্ষণ উইন্ডো চলাকালীন, আমি প্রতিটি ডাটাবেসে ম্যানুয়ালি ব্যর্থ হয়েছি এবং কিছু ধোঁয়া পরীক্ষার পরে, মিররিং বন্ধ করে দিয়েছি এবং শেষ পর্যন্ত উত্সযুক্ত সার্ভারগুলি থেকে পুরানো ডেটা ফাইলগুলি সরিয়েছি। এই প্রক্রিয়াটির একটি বিভ্রান্তি হ'ল মিররযুক্ত ডাটাবেসের ব্যর্থতা পূর্বের প্রাথমিকটিকে পুনরুদ্ধারকৃত অবস্থায় ফেলে দেয়, সুতরাং আপনি যদি এগুলিকে কেবল বাদ দিতে না চান তবে আপনাকে অনলাইনে ফিরিয়ে আনতে হবে এবং তারপরে আলাদা করা উচিত, বা আপনার পছন্দসই পদ্ধতি অপসারণের পদ্ধতি যা-ই হোক না কেন । এছাড়াও, আমি এর কোনওটির জন্য সাক্ষী কনফিগার করেছিলাম না কারণ আমি স্বয়ংক্রিয়ভাবে ফেলওভার চাইনি। এটি একটি নিয়ন্ত্রিত ঘটনা ছিল।

আপনি যদি আরও কোনও নির্দিষ্ট বিবরণ চান তা দয়া করে আমাকে জানান। আমি সার্ভার এবং নেটওয়ার্ক চশমা বাদ দিয়েছি তবে আপনি চাইলে সরবরাহ করতে পারেন।

ধন্যবাদ

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