এখানে আমি কয়েকটি তদন্ত করব। এগুলি সব করবেন না (তাদের কয়েকটি একই উদ্দেশ্য সাধনের জন্য বিভিন্ন কৌশল), তবে বিবেচনা করার মতো:
1. সরাসরি এসকিউএল ত্রুটি লগ পরীক্ষা করুন
এসকিউএল ত্রুটিযুক্ত লগযুক্ত ফোল্ডারে সরাসরি ব্রাউজ ERRORLOG
করুন এবং এসকিউএল উদাহরণটি কেন শুরু হবে না সে সম্পর্কে আরও বিশদ পেতে নোটপ্যাডে অতি সাম্প্রতিকতম লোড করুন । সম্ভবত আপনি দেখতে পাবেন যে সমস্যাটি মোটেও মাস্টার ডাটাবেসের সাথে নয়।
2. একক ব্যবহারকারী মোডে উদাহরণ শুরু করার চেষ্টা করুন
এসকিউএল সার্ভারের-m
(একক ব্যবহারকারী মোড) এবং -f
(ন্যূনতম কনফিগারেশন মোড) সহ স্টার্টআপ বিকল্পগুলির একটি সম্পূর্ণ তালিকা এখানে রয়েছে । অন্যান্য সমস্যা আপনাকে মাস্টার ডাটাবেসের জন্য পথটি নির্দিষ্ট করতে দেয়, যদি সমস্যা হয়।
আপনি যদি উদাহরণটি শুরু করতে সক্ষম হন তবে মাস্টার ডাটাবেসটি পুনরুদ্ধার করার জন্য আপনি যে এমএসডিএন নিবন্ধটি সংযুক্ত করেছেন সেগুলির পদক্ষেপগুলি অনুসরণ করুন বা টমাস লারকের এই বিশদ পদক্ষেপটি অনুসরণ করুন ।
যদি আপনি করার আগে অন্য কোনও অ্যাপ্লিকেশন সর্বদা একক ব্যবহারকারী সংযোগটি ধরে রাখে তবে প্রথমে এসকিউএল এজেন্টকে অক্ষম করুন যাতে এটি শুরু হয় না। দ্বিতীয়ত, অ্যাপ্লিকেশনটির নামটি নির্দিষ্ট করতে প্যারামিটারটি ব্যবহার করার জন্য এই প্রশ্নের ধারণাগুলি দেখুন-m"Application Name"
।
৩. master
অন্য কোনও পরিস্থিতিতে পুনরুদ্ধার করুন এবং এর ফাইলগুলি অনুলিপি করুন
আমি এই অননুমোদিত কৌশলটির অন্য একটি উল্লেখ খুঁজে পেয়েছি , তবে আমি গত সপ্তাহান্তে এটি সফলভাবে ব্যবহার করেছি, তাই এটি চেষ্টা করার মতো হতে পারে।
আপনি যদি একক-ব্যবহারকারীর মোডে উদাহরণটি শুরু করতে না পারেন তবে আপনার অন্য একটি এসকিউএল উদাহরণ রয়েছে ঠিক একই রিলিজ এবং বিল্ড চলমান থাকলে , আপনার মৃত সার্ভার থেকে সর্বশেষ পরিচিত ভাল মাস্টার ডাটাবেস ব্যাকআপটিকে অন্য পরিস্থিতিতে পুনরুদ্ধার করার চেষ্টা করুন:
- অবশ্যই আলাদা নাম হিসাবে পুনরুদ্ধার করুন (
master_please_god_let_this_work
), WITH MOVE
যাতে আপনি master
আপনার ভাল সার্ভারে ওভাররাইট না করে
- পুনরুদ্ধার করুন
WITH NORECOVERY
। এটি প্রয়োজনীয় কিনা তা নিশ্চিত নন, তবে আমাকে আরও ভাল মনে হয়েছে যে আমি জানতাম যে অন্য সার্ভারটি পুনরুদ্ধার করা মাস্টারের কোনও কিছুই বদলাবে না
- এটি অফলাইনে সেট করুন:
ALTER DATABASE [master_please_god_let_this_work] SET OFFLINE
- ভাল সার্ভার থেকে ডেড সার্ভারে পুনরুদ্ধার করা এমডিএফ এবং এলডিএফ ফাইলগুলি অনুলিপি করুন
- পুনঃনামকরণ
master.mdf
এবং mastlog.ldf
আপনার পুনরুদ্ধার সংস্করণের সাথে খারাপ মাস্টার ফাইলগুলি প্রতিস্থাপন করার জন্য প্রয়োজনীয় ফাইল
- আপনার আঙ্গুলগুলি অতিক্রম করুন এবং উদাহরণটি শুরু করুন
- .চ্ছিক: পুনরুদ্ধারকৃত সার্ভারে নতুন করে মাস্টারের পুনঃস্থাপন করুন। এটি প্রয়োজনীয় কিনা তা নিশ্চিত নন, যেহেতু আমরা পরিবর্তন না করতে বেশ যত্নশীল ছিলাম
master
।
4. সিস্টেম ডাটাবেস পুনর্নির্মাণ
যদি আপনার কাছে একই সংস্করণটি চালানো অন্য কোনও উদাহরণ না থেকে থাকে, বা যদি আপনি # 3 এ তালিকাভুক্ত অননুমোদিত পদ্ধতি ব্যবহার করতে স্বাচ্ছন্দ্য বোধ করেন না বা যদি আপনার ব্যাকআপ না থাকে master
(তবে আপনার ব্যাকআপ কেন নেই ) ? আপনি মূল ইনস্টল ডিস্ক থেকে এসকিউএল সিস্টেম ডেটাবেসগুলি পুনর্নির্মাণ করতে পারেন :
Setup.exe /ACTION=REBUILDDATABASE /...
এটি সম্পূর্ণ হয়ে গেলে, আপনি master
আপনার শেষ ভাল ব্যাকআপ থেকে পুনরুদ্ধার করতে পূর্বে লিঙ্কিত পদক্ষেপগুলি অনুসরণ করতে পারেন । msdb
আপনার সমস্ত চাকরী, কাজের সময়সূচী এবং কাজের ইতিহাস রাখতে আপনাকে সাম্প্রতিক ব্যাকআপটি পুনরুদ্ধার করতে হবে।
৫) সমস্ত ইউএসএল ডাটাবেসকে নতুন (বা বিদ্যমান) এসকিউএল ইনস্ট্যান্সে পুনরুদ্ধার করুন
যদি আপনি ইতিমধ্যে অন্য একটি বিদ্যমান উদাহরণটি পেয়েছেন (যথাযথ এসকিউএল সংস্করণ, পর্যাপ্ত ডিস্ক স্পেস), আমি সম্ভবত অন্যান্য সমস্যা সমাধানের পদক্ষেপগুলিতে কাজ করার সময় খুব সাম্প্রতিক ব্যাকআপগুলি থেকে ডাটাবেস পুনরুদ্ধার শুরু করব just
যদি আপনার নতুন (বা পুনরায় ইনস্টল) উদাহরণটিতে একই ডিস্কটিতে অ্যাক্সেস থাকে তবে এগুলি কেবল নতুন ডাটাবেস হিসাবে সংযুক্ত করা আরও দ্রুত হয়:
CREATE DATABASE foo
ON (FILENAME = 'D:\data\foo.mdf'),
(FILENAME = 'D:\data\foo_log.ldf')
FOR ATTACH;
Any. যেকোন পরিবর্তন পুনরায় করুন master
একবার আপনি সফলভাবে পুনরুদ্ধার master
(উপরের যেকোন কৌশল দ্বারা), আপনাকে যে কোনও পরিবর্তন হারিয়ে গেছে তা তদন্ত করতে হবে, যদি আপনি স্রেফ পুনরুদ্ধার করা ব্যাকআপের পরে সেগুলি করা হয়:
- সুরক্ষা পরিবর্তন
- নতুন ডাটাবেস (ফাইলগুলি এখনও ডিস্কে থাকবে, কেবল সেগুলি সংযুক্ত করুন)
- সার্ভার-ওয়াইড সেটিংস
এগুলি খুঁজে বের করার কোনও যাদু উপায় নেই, আপনার যদি কোনওরকম পরিবর্তন হয় তবে আপনাকে এই ধরণের পরিবর্তনের জন্য আপনার নিজের কোম্পানির ডকুমেন্টেশন ট্রেলে ফিরে যেতে হবে।