ডিফারেনশিয়াল ব্যাকআপ পুনরুদ্ধার করা ডিফল্ট লগ ফাইল তৈরি করে?


11

এখানে আমার সমস্যা। আমি একটি সম্পূর্ণ পুনরুদ্ধারের মাধ্যমে একটি নতুন সার্ভারে একটি ডাটাবেস স্থানান্তরিত করার চেষ্টা করছি, তারপরে দ্রুত ডিফারেনশিয়াল ব্যাকআপ / পুনরুদ্ধার সহ কাটওভার। আমি কোনও সমস্যা ছাড়াই পুরো পুনরুদ্ধার করতে পারি, তবে ডিফারেনশিয়াল ব্যাকআপ পুনরুদ্ধার করার সময় আমি নিম্নলিখিত সতর্কতাটি পাই:

এমএসজি 3127, স্তর 16, রাজ্য 1, লাইন 1 পুনরুদ্ধার করা ডাটাবেস 'ডাটাবেসনাম' এর ফাইল 'ডাটাবেস_লগ 2' বিচ্ছিন্ন অবস্থায় ফেলে দেওয়া হচ্ছে কারণ ডাটাবেসটি সহজ পুনরুদ্ধার মডেলটি ব্যবহার করছে এবং ফাইলটি পঠন-লেখার অ্যাক্সেসের জন্য চিহ্নিত করা হয়েছে। সুতরাং, কেবল পঠনযোগ্য ফাইলগুলি টুকরোয়াল পুনরুদ্ধারের মাধ্যমে পুনরুদ্ধার করা যেতে পারে।

ডাটাবেসটি পুনরুদ্ধার করে এবং অনলাইন হিসাবে বিবেচনা করা হয়, তবে নিম্নলিখিত ত্রুটিযুক্ত এই ডিফল্ট ফাইলের কারণে কোনও ব্যাকআপ অপারেশন ব্যর্থ হয়:

এমএসজি 3636, স্তর 16, রাজ্য 2, লাইন 1 ডাটাবেস আইডি 10 ফাইল আইডির জন্য 'ব্যাকআপমেটাডাটা' মেটাডেটা প্রক্রিয়াকরণের সময় একটি ত্রুটি ঘটেছে। এমএসজি 3046, স্তর 16, রাজ্য 2, লাইন 1 অসামঞ্জস্য মেটাডেটা সম্মুখীন হয়েছে। কেবলমাত্র সম্ভাব্য ব্যাকআপ অপারেশনটি হ'ল ডান-লগ ব্যাকআপের সাথে উইন্ডো CONTINUE_AFTER_ERROR বা NO_TRUNCATE বিকল্প ব্যবহার করে। এমএসজি 3013, স্তর 16, রাজ্য 1, লাইন 1 ব্যাকআপ ডেটাবেস অস্বাভাবিকভাবে শেষ করছে।

আমি যদি পুরোপুরি এবং ডিফারেনশিয়াল উপর ফিলিস্টোরলি পুনরুদ্ধার করি তবে উভয়ই আমাকে একই আউটপুট দেয়, যা উত্স ডাটাবেসে sys.datedia_files থেকে যা দেখি তার সাথে মেলে। ডেভেলপার সংস্করণে সার্ভারটি এসকিউএল २०१২ এসপি 1।

আমি একটি সম্পূর্ণ ব্যাকআপ করতে পারি এবং তারপরে তাত্ক্ষণিকভাবে একটি ডিফারেনশিয়াল করতে পারি এবং এই ফাইলগুলিকে একই সার্ভারের একটি পৃথক ডাটাবেসে পুনরুদ্ধার করতে পারি এবং ঠিক একই সমস্যাটি দেখতে পারি, সুতরাং এখানে কীভাবে ডিফারেনশিয়ালটি তৈরি করা হচ্ছে তা নিয়ে কারণ রয়েছে something যদি আমি সম্পূর্ণ ব্যাকআপটি পুনরুদ্ধার করে পুনরুদ্ধার করি তবে কোনও সমস্যা নেই। আমি জানি না এই ফাইলটি এই ডাটাবেসে বিদ্যমান ছিল কিনা তবে এটি সম্পূর্ণ সম্ভব যে এই ফাইলটি বিদ্যমান ছিল এবং এটি অনেক আগেই মুছে ফেলা হয়েছিল। যদি আমি পুনরুদ্ধার করা ডাটাবেসে sys.datedia_files জিজ্ঞাসা করি, DEFUNCT ফাইলটির ড্রপ_লস্নের একটি মান রয়েছে যা এটি নিশ্চিত করে বলে মনে হচ্ছে। সোর্স ডাটাবেসে বর্তমানে কেবল একটি ফাইলগ্রুপ (প্রাথমিক), 4 ডেটা ফাইল এবং একটি লগ ফাইল রয়েছে।

কোন ধারনা?


আপনি দয়া করে ব্যাকআপগুলি এবং পুনরুদ্ধার করতে আপনি যে বিবৃতিগুলি ব্যবহার করছেন তা আমাদের দেখাতে পারেন?
জন সেগেল

সাধারণ কিছুই আউট. ডিস্ক থেকে ডেটাবেস databasename পুনরুদ্ধার = 'ডি: \ Full.bak' প্রতিস্থাপন করুন, NORECOVERY তারপর ডিস্ক থেকে ডেটাবেস databasename পুনরুদ্ধার সঙ্গে = 'ডি: \ Diff.bak' পুনরুদ্ধার
FilamentUnities

উত্তর:


5

এসকিউএল 2012 এসপি 1 বিকাশকারী সংস্করণে পরীক্ষিত এটি পুনরুত্পাদন করার পদক্ষেপগুলি এখানে রয়েছে। এটি এসকিউএল ২০০৮ এ ঘটে না। সংক্ষেপে বলতে গেলে, এসকিউএল ২০১২ সালে তৈরি করা একটি ডেটাবেস যখন মডেল ডাটাবেস সিম্পল পুনরুদ্ধারে থাকে তখন একটি অতিরিক্ত লগ ফাইল উপস্থিত থাকা অবস্থায় একটি সম্পূর্ণ ব্যাকআপ থাকে, অতিরিক্ত লগ ফাইলটি ব্যবহারযোগ্য ডিফারেনশিয়াল ব্যাকআপ তৈরি করতে পারে না কখনও মুছে ফেলা হয়েছে।

ALTER DATABASE [model] SET RECOVERY SIMPLE
GO
CREATE DATABASE [DefunctTest]
GO
ALTER DATABASE [DefunctTest] ADD LOG FILE ( NAME = N'DefunctTest_log2', FILENAME = N'D:\DefunctTest_log2.ldf' , SIZE = 25600KB , FILEGROWTH = 10%)
GO
BACKUP DATABASE [DefunctTest] TO DISK = 'D:\DefunctTestPostLogFile.bak' WITH INIT
GO
ALTER DATABASE [DefunctTest]  REMOVE FILE [DefunctTest_log2]
GO

BACKUP DATABASE [DefunctTest] TO DISK = 'D:\DefunctTestFull.bak' WITH INIT
GO
BACKUP DATABASE [DefunctTest] TO DISK = 'D:\DefunctTestDiff.bak' WITH DIFFERENTIAL, INIT
GO
--Show that the backups only have the one log file.
RESTORE FILELISTONLY FROM DISK = 'D:\DefunctTestFull.bak'
RESTORE FILELISTONLY FROM DISK = 'D:\DefunctTestDiff.bak'
GO
RESTORE DATABASE [DefunctTest2] FROM DISK = 'D:\DefunctTestFull.bak' WITH 
MOVE 'DefunctTest' TO 'D:\DefunctTest2.mdf',
MOVE 'DefunctTest_log' TO 'D:\DefunctTest2_log.ldf', REPLACE, NORECOVERY
GO
--This restore will have the error.
RESTORE DATABASE [DefunctTest2] FROM DISK = 'D:\DefunctTestDiff.bak' WITH RECOVERY
GO

USE [DefunctTest2]
SELECT * FROM sys.database_files
GO

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

আপডেট: আমার রেপ্রো স্ক্রিপ্টে এই দৃশ্যটি তৈরি করার মতো বাগটি এই কেবি: https ://support.mic Microsoft.com/en-us/kb/2830400 দ্বারা স্থির করা হয়েছে বলে মনে হচ্ছে । মন্তব্যগুলি থেকে এটি এসকিউএল ২০১২ / ২০১৪ এর জন্য একটি অতিরিক্ত ফিক্স উপলভ্য বলে মনে হচ্ছে, দৃশ্যপটগুলি খুব একই রকমের বলে মনে হচ্ছে: https://support.microsoft.com/en-us/kb/3009576


লোকজনদের পুনরুত্পাদন করতে সহায়তা করতে আমি আপনার লিপিটি সংযুক্ত মন্তব্যে অন্তর্ভুক্ত করব।
কেনেথ ফিশার

1
এসকিউএল সার্ভার 2012 এন্টারপ্রাইজ সংস্করণ, 11.0.3412 (এসপি 1 এর জন্য সিইউ 9)

বিবরণী স্ক্রিপ্টটি সংযোগ আইটেমটিতে রয়েছে, যদি আপনি বিশদ বোতামটি ক্লিক করেন।
ফিলামেন্ট

1
শন, সিইউ এর সংশোধনগুলির দিকে তাকিয়ে, আমি মনে করি এটি সম্ভবত এই আচরণটি স্থির করেছে: support.mic Microsoft.com/kb/2830400
ফিলামেন্ট

2
এই গত সপ্তাহে আমার একটি যুদ্ধ হয়েছিল এবং এই থ্রেডটি আমাকে এটিকে সাজানোর জন্য সহায়তা করেছে তাই আপনাকে ধন্যবাদ। দেখে মনে হচ্ছে ঠিক আছে এসকিউএল ২০১২ এসপি 2 সিইউ 3: সমর্থন.microsoft.com/en-us/kb/3009576
রিচার্ড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.