এসকিউএল সার্ভার পুনরুদ্ধার ত্রুটি - অ্যাক্সেস অস্বীকৃত


167

আমি আমার লোকাল মেশিনে একটি ডাটাবেস তৈরি করেছি এবং তারপরে একটি ব্যাকআপ কল করেছি tables.bak টেবিলেরDataLabTables

আমি সেই ব্যাকআপটি সেই টেবিল ছাড়াই একটি রিমোট মেশিনে স্থানান্তরিত করেছি এবং পুনরুদ্ধার করার চেষ্টা করেছি তবে নিম্নলিখিত ত্রুটিটি পেয়েছি:

System.Data.SqlClient.SqlError: অপারেটিং সিস্টেমটি '5: (অ্যাক্সেস প্রত্যাখ্যান করা হয়েছে।)' ত্রুটি ফিরিয়ে নিয়েছিল: 'সিস্টোর: পুনরুদ্ধারকন্টিনিয়র :: ভ্যালিডেটট্যারেটফ্রেসেশন' করার সময় 'সি: Files প্রোগ্রাম ফাইলস \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ এমএসএসকিউএল \ এমএসএসকিউএল L ডাটাএলটিবেলস .mdf '।

আমি কীভাবে আমার অধিকারগুলি ঠিক করব, যদি সমস্যা হয়?

উত্তর:


539

এসকিউএল সার্ভার ২০১২-এর সাথে আমার এই সমস্যাটি এসেছে।

এটিতে দেখা যাচ্ছে যে 'ফাইলগুলি' বিভাগে 'সমস্ত ফাইলকে ফোল্ডারে পুনরায় স্থানান্তর করুন' চিহ্নিত করা বাক্সটি টিক করা ছিল:

এখানে চিত্র বর্ণনা লিখুন

(চিত্র পূর্ণ আকার দেখতে ক্লিক করুন)

এটি অবশ্যই ধরে নিয়েছে যে আপনার এসকিউএল সার্ভারের সঠিক সংস্করণ ইনস্টল রয়েছে।


13
আমার জন্যও কাজ করেছেন। কেন কেউ ব্যাখ্যা করতে পারেন ?
চৌম্বকীয়

3
আপনি কী দয়া করে এটি ভাগ করে নিতে পারেন কীভাবে এটি ইউআইয়ের পরিবর্তে স্ক্রিপ্টের মাধ্যমে করা যায়?
এফএমএফএফ

9
2014, একই ফিক্স নিয়ে আমার এই সমস্যা ছিল।
ডেনএডডি

3
এসকিউএল এক্সপ্রেস থেকে ব্যাক আপ নেওয়া এবং পূর্ণ এসকিউএল সার্ভারে পুনরুদ্ধার করার
সময়ও

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

30

ত্রুটি বার্তা থেকে, এটি বলেছে যে আপনার পুনরুদ্ধার অপারেশনের লক্ষ্য ( c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DataLabTables.mdf) টার্গেট করার সময় ত্রুটি আছে ।

এটির মতো শোনাচ্ছে:

ক) ফাইলটি ইতিমধ্যে বিদ্যমান (কারণ আপনি ইতিমধ্যে এটি পূর্বে পুনরুদ্ধার করেছেন) এবং এসকিউএল সার্ভারের দ্বারা ব্যবহৃত হয়

অথবা

খ) ডিরেক্টরিটি মোটেই বিদ্যমান নেই

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

আমার কুণ্ডলীটি হ'ল: আপনি ইতিমধ্যে সেই ডাটাবেসটিকে পূর্বে পুনরুদ্ধার করেছিলেন, এবং এখন, দ্বিতীয় পুনরুদ্ধারের পরে, আপনি আপনার পুনরুদ্ধার উইজার্ডে "বিদ্যমান ডাটাবেস ওভাররাইট" চেকবক্সটি চেক করেননি - সুতরাং বিদ্যমান ফাইলটি ওভাররাইট করা যাবে না এবং পুনরুদ্ধার ব্যর্থ হবে।

আপনার রিমোট সার্ভারে পুনরুদ্ধারটি চালাচ্ছেন এমন ব্যবহারকারীটির স্পষ্টতই দূরবর্তী সার্ভারে সেই ডিরেক্টরিতে অ্যাক্সেস নেই।

C:\program files\.... একটি সুরক্ষিত ডিরেক্টরি - সাধারণ (প্রশাসনিক নয়) ব্যবহারকারীদের এই ডিরেক্টরিতে (এবং এর উপ-ডিরেক্টরিগুলি) অ্যাক্সেস নেই।

সবচেয়ে সহজ সমাধান: আপনার বেক ফাইলটি অন্য কোথাও রাখার চেষ্টা করুন (উদাঃ C:\temp) এবং সেখান থেকে পুনরুদ্ধার করুন


আমি সি: \ টেম্পের অধীনে চেষ্টা করেছি কিন্তু ত্রুটিটি এখনও উপরে যেমন একই পথের সাথে প্রথম বলেছিলাম যা অদ্ভুত
সিডাব

আমি এসকিউএল ম্যানেজমেন্ট স্টুডিওতে ডেটাবেসগুলিতে ডান ক্লিক করি, তারপরে টাস্কগুলি -> পুনরুদ্ধার করুন
সিডাব

1
@ মার্কস_এইচএক্স, এই ফাইলটির জন্য কোনও ডিরেক্টরি নেই বলে আমি বিকল্পগুলি সম্পাদনা করতে ভুলে গেছি ... এটি নয় ... এমএসএসকিউএল \ ডেটাব্যাবটবেবলস.এমডিএফ পরিবর্তে ... এমএসএসকিউএল \ ডেটা \ ডেটা ল্যাবটবেবলস.এমডিএফ
সিডিউব

2
@মার্ক_স: বিকল্পের "এবং এটি এসকিউএল সার্ভার দ্বারা ব্যবহৃত হয়" বিকল্পের একটি অংশের উপর মাইনর মন্তব্য: উপরের তালিকাভুক্ত: RESTOREফাইলটি উপস্থিত থাকলে একটি স্ট্যান্ডার্ড কমান্ড ব্যর্থ হয়, এটি এসকিউএল সার্ভারের দ্বারা ব্যবহার না করা সত্ত্বেও (যেমন এমডিএফ / পূর্ববর্তী বিচ্ছেদের পরে এলডিএফ ফাইলগুলি স্থানে থাকে)। আমি গত কয়েক সপ্তাহ ধরে কয়েকশ ডিবি'র একটি বড় মাইগ্রেশনের জন্য কাস্টম টি-এসকিউএল-ভিত্তিক লগ-শিপিং বাস্তবায়নে এসেছি। আমি নিশ্চিত নই যে ত্রুটি বার্তাটি "অ্যাক্সেস প্রত্যাখ্যান" ছিল, কিছু কম নির্দিষ্ট হতে পারে।
তাও

2
ব্যাকআপের মাধ্যমে পুনরুদ্ধার করার আগে আমাকে নিজেই বিদ্যমান এমডিএফ / এলডিএফ ফাইলগুলির নাম পরিবর্তন করতে হয়েছিল - 'ওভাররাইট' পরীক্ষা করা যথেষ্ট ছিল না।
জেমি কিলিং

26

আমি একই সমস্যা ছিল। দেখা গেল যে আমার SQL Serverএবং SQL Server Agentপরিষেবাদিগুলি logon asসেই Network Servicesঅ্যাকাউন্টের অধীনে চলছে যা ব্যাক আপ পুনরুদ্ধার করার জন্য লেখার অ্যাক্সেস নেই।

আমি এই উভয় পরিষেবাদি যেমন লগইনে পরিবর্তন করেছি Local System Accountএবং এটি সমস্যার সমাধান করেছে।


এটি একটি ভাল ধারণা নয়। এটি আসল সমস্যাটি মুখোশ দেয় যা আপনি যে ফাইল ফাইলটি পুনরুদ্ধার করার চেষ্টা করছেন সেটি আপনার ইচ্ছা নয়।
ডিক্লুয়েট

2
আমার এসকিউএল সার্ভার পরিষেবাটি "এনটি সার্ভিস \ এমএসএসকিউএসএলভার" এ চলছে এবং এই ব্যবহারকারীর ডেটা এবং লগ ফোল্ডারে আমার জন্য কাজ করার অনুমতি যুক্ত করেছে।
টিম নিউটন

ভাল, এটি আমাকে সাহায্য করেছে
Aliaksei Zhukau

9

সম্প্রতি আমি এসকিউএল ২০০৮ আর 2 এর সাথে এই সমস্যার মুখোমুখি হয়েছি এবং নীচের সমাধানটি আমার পক্ষে কাজ করেছে:

1) আপনি যেটিকে পুনরুদ্ধার করতে চাইছেন সেই একই নাম সহ একটি নতুন ডাটাবেস তৈরি করুন 2) পুনরুদ্ধার করার সময়, আপনি উপরে এবং বিকল্পগুলিতে একই নামটি ব্যবহার করুন, ওভাররাইট বিকল্পটি ক্লিক করুন

অন্যান্য সমাধানগুলি কাজ না করে আপনি উপরের শটটি দিতে পারেন।


6

ব্যাকআপ স্রষ্টার এমএসএসকিএল সংস্করণ 10 ইনস্টল করা ছিল, তাই যখন তিনি ব্যাকআপটি গ্রহণ করেন তখন এটি মূল ফাইলের পাথও সংরক্ষণ করে (এটি একই স্থানে পুনরুদ্ধার করতে সক্ষম হতে পারে) তবে আমার কাছে সংস্করণ 11 ছিল, সুতরাং এটি গন্তব্য ডিরেক্টরিটি খুঁজে পেল না।

সুতরাং আমি আউটপুট ফাইল ডিরেক্টরিটি সি: \ প্রোগ্রাম ফাইলগুলি \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ এমএসএসকিউএল ১১. এমএসএসকিউএলএসভার \ এমএসএসকিউএল ATA ডেটা। এ পরিবর্তন করেছি এবং এটি ডাটাবেসটি সফলভাবে পুনরুদ্ধার করতে সক্ষম হয়েছিল।

উৎস


6

আমারও একই সমস্যা ছিল। আমি 2005 .bak ফাইলটি পুনরুদ্ধার করার চেষ্টা করেছি এবং আমি ঠিক একই ত্রুটি পেয়েছি। আমি ওভাররাইট অপশনটি নির্বাচন করেছিলাম এবং কোনও ফলপ্রসূ হয়নি।

আমার সমাধানটি হ'ল এসকিউএল ব্যবহারকারীকে ডিরেক্টরিতে ডিরেক্টরিটিতে অ্যাক্সেস দেওয়া, ফোল্ডারে গিয়ে এবং সম্পত্তি স্ক্রিনের মাধ্যমে অ্যাক্সেসের অধিকারগুলি সম্পাদনা করে।


2

এই সমস্যাটিও কয়েক ঘন্টা হারিয়েছে। যদিও এটি চলছে:

আমার ক্ষেত্রে "অ্যাক্সেস প্রত্যাখ্যান" এর অর্থ "অ্যাক্সেস অস্বীকৃত" did আমার উইন্ডোজ ডিভাইসে mssqlstudio- র ব্যবহারকারীর অ্যাকাউন্টে ত্রুটি বার্তায় নির্দিষ্ট ফোল্ডারের সম্পূর্ণ নিয়ন্ত্রণ ছিল না। আমি এটি সম্পূর্ণ নিয়ন্ত্রণ দিয়েছি। অ্যাক্সেস আর অস্বীকার করা হয়নি এবং পুনরুদ্ধার সফল।

স্টুডিওর জন্য কেন ফোল্ডারটি লক করা হয়েছিল? কে জানে ? আমি উত্তর দেওয়ার চেষ্টা না করে এটি মোকাবেলা করার জন্য যথেষ্ট প্রশ্ন পেয়েছি।



0

অন্য দৃশ্যে একাধিক ডাটাবেস পাথের অস্তিত্ব থাকতে পারে। প্রথমে যেখানে নতুন ডাটাবেসগুলি বর্তমানে সংরক্ষণ করা হচ্ছে সেই পথে নোট করুন। সুতরাং আপনি যদি একটি নতুন ফাঁকা ডাটাবেস তৈরি করেন এবং তা করেন Tasks/Restore, তবে নিশ্চিত হয়ে নিন যে পুনরুদ্ধারটি যে পথটি ব্যবহার করার চেষ্টা করছে সেটি একই ডিরেক্টরি যা খালি ডাটাবেসটি তৈরি হয়েছিল। ত্রুটি যদি এটি বর্তমান পথে না হয় তবে আপনি কাজ করছেন। পথটি আইনী না হলে স্পট করা খুব সহজ, যখন পথটি আইনী তখন স্পট করা খুব শক্ত কিন্তু বর্তমান পথ নয়।


0

দুঃখিত কারণ আমি মন্তব্য করতে পারি না ...

আমারও একই সমস্যা ছিল। আমার ক্ষেত্রে সমস্যাটি পুরানো স্কিএল সার্ভার ফোল্ডারে (যা সার্ভারে বিদ্যমান ছিল) পুনরুদ্ধার করার সাথে সম্পর্কিত ছিল। এটি পুরানো এসকিউএল সার্ভার ব্যাকআপের কারণে (যেমন এসকিউএল সার্ভার ২০১২ ব্যাকআপ) নতুন এসকিএল সার্ভারে পুনরুদ্ধার করা হয়েছে (এসকিউএল সার্ভার ২০১৪) আসল ইস্যুটি @ মার্ক-উত্তরগুলির থেকে খুব বেশি আলাদা নয়। যাইহোক, আমি কেবলমাত্র টার্গেট ফোল্ডারটিকে নতুন এসকিউএল সার্ভার ডেটা ফোল্ডারে পরিবর্তন করেছি।


0

এটি সেরা সমাধান নাও হতে পারে তবে আমি এসকিউএল সার্ভার ২০০ 2005 এ পুনরুদ্ধার করার চেষ্টা করছিলাম তবে আমি এসকিউএল সার্ভার ২০০৮ এ পরিবর্তিত হয়েছি এবং এটি কার্যকর হয়েছে।



0

ফ্রেন্ডস ... ডাটাবেস পুনরায় চালু করার সময় আমার একই সমস্যা ছিল এবং প্রতিটি সমাধান চেষ্টা করেছিলাম তবে সমাধান হতে পারে না। তারপরে আমি এসকিউএল 2005 ইনস্টল করার চেষ্টা করেছি এবং সমস্যাটি সমাধান হয়েছে। আসলে শেষবারের মতো এসকিউএলকে নির্দেশ দেওয়ার সময় আমি কাস্টমাইজ বিকল্পটি পরীক্ষা করতে ভুলে গিয়েছিলাম .. এটি ইনস্টল করার সময় এটি দু'বার আসে এবং আমি কেবল এটির জন্য পরীক্ষা করেছিলাম ..


0

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


0

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


0

পথগুলি সঠিক হলে এটিও ঘটে তবে পরিষেবা অ্যাকাউন্টটি ডেটা ফাইলের মালিক নয় (তবুও এটি পড়ার / লেখার অ্যাক্সেসের যথেষ্ট অধিকার রয়েছে)। যদি ফোল্ডারের অনুমতিগুলির সাথে ফাইলগুলির অনুমতিগুলি পুনরায় সেট করা হয় (অবশ্যই পরিষেবাটি বন্ধ ছিল) This

এক্ষেত্রে সবচেয়ে সহজ সমাধান হ'ল প্রতিটি ডাটাবেসকে আলাদা করে আবার এটিকে সংযুক্ত করা (কারণ মালিককে সংযুক্ত করার সময় পরিষেবা অ্যাকাউন্ট হিসাবে পরিবর্তন করা হয়)।


-1

এটা চেষ্টা কর:

পুনরুদ্ধার ডিবি উইজার্ড উইন্ডোতে, ফাইল ট্যাবে যান, "সমস্ত ফাইলকে ফোল্ডারে পুনরায় স্থান দিন" চেক বাক্সটি আনচেক করুন তারপরে সি: থেকে অন্য কোনও ড্রাইভে পুনরুদ্ধার গন্তব্যটি পরিবর্তন করুন। তারপরে নিয়মিত পুনরুদ্ধার প্রক্রিয়াটি নিয়ে এগিয়ে যান। এটি সফলভাবে পুনরুদ্ধার হবে।


-1

আমার একই সমস্যা ছিল তবে আমি এসকিএল সার্ভার ২০০৮ আর ২ ব্যবহার করেছি, আপনাকে অবশ্যই বিকল্পগুলি পরীক্ষা করে পরীক্ষা করতে হবে এবং এসকিএল ফাইলগুলি যেখানে এমএমএফ এবং .ldf সংরক্ষণ করতে চলেছে তা যাচাই করতে হবে আপনাকে অবশ্যই আপনার এসকিএল সার্ভার ইনস্টলেশনের পথটি নির্বাচন করতে হবে। আমি এটি দিয়ে আমার সমস্যার সমাধান করেছি, আমি আশা করি এটি আপনাকে সহায়তা করবে।


-2

তারপরে এটিকে সি: এর আওতাধীন একটি সাব ফোল্ডারে নিয়ে যাওয়ার চেষ্টা করুন, তবে যাচাই করুন যে আপনার যে ফোল্ডারটি ব্যবহার করছেন তাতে তার ব্যবহারকারীর পুরো অধিকার রয়েছে।

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