ডাটাবেস সংযুক্ত করার সময় অ্যাক্সেস অস্বীকার করা হয়


146

আমি এসকিউএল সার্ভার 2008 বিকাশকারী সংস্করণ ব্যবহার করছি। আমি অ্যাডভেঞ্চার ওয়ার্কস ২০০৮ ডাটাবেস সংযুক্ত করার চেষ্টা করছিলাম।

আমি যখন সংযুক্ত করার চেষ্টা করেছি, তখন আমি একটি "অ্যাক্সেস অস্বীকার করা" ত্রুটি পেয়েছি। ইভেন্ট লগ অনুসারে, এটি ও / এস থেকে এসেছে:

ওপেন ব্যর্থ হয়েছে: ফাইলটি খুলতে পারেনি ডি: \ প্রকল্পডাটা \ অ্যাডভেঞ্চার ওয়ার্কস \ অ্যাডভেঞ্চার ওয়ার্কস এলটি ২০০৮_ডাটা.এমডিএফ ফাইল নম্বরটির জন্য ০. ওএস ত্রুটি: ৫ (অ্যাক্সেস অস্বীকার করা হয়েছে।)

আমি "এনটিএফএস সমস্যা" ভেবেছিলাম, তবে সিস্টেম (এবং আমি) উভয় ফাইলে অ্যাক্সেস পরিবর্তন করেছি।

আমি দেখতে পেয়েছি যে আমি সা হিসাবে লগ ইন করলে আমি সফলভাবে ডাটাবেসটি সংযুক্ত করতে পারি তবে আমার ব্যবহারকারীর অ্যাকাউন্টটি কাজ করবে না।

আমি আমার মেশিনে স্থানীয় প্রশাসক গোষ্ঠীর একজন সদস্য এবং এসকিউএল সার্ভারের উদাহরণে আমি সিসাদমিন্সের ভূমিকায় আছি।

কোন ধারণা কেন আমাকে সা হিসাবে লগ ইন করতে হয়েছিল?


এমডিএফ ফাইলটি কি কোনও সুযোগ দ্বারা এনক্রিপ্ট করা আছে?
ব্রেটস্কি

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

1
ইউএসি এইভাবে ডাব্লু in এ কাজ করে, এতে অবাক হওয়ার কিছু নেই।
আল কেপ

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

উত্তর:


162

প্রশাসক হিসাবে এসকিউএল সার্ভার ম্যানেজমেন্ট স্টুডিও চালান। (ডান ক্লিক-> প্রশাসক হিসাবে চালানো) যা আমার ক্ষেত্রে সমস্ত অদ্ভুততার যত্ন নিয়েছে।

এসকিউএল এসআরভি এক্সপ্রেস ২০০৮ আর 2। উইন্ডোজ 7


5
প্রশাসক হিসাবে পরিচালনা স্টুডিও চালানো আমার পক্ষে কাজ করেনি। উইন্ডো পরিষেবা চালু করার চেষ্টা করার সময় এই ত্রুটি ঘটে।
নুজোলিলো

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

3
আমার জন্যও কাজ করেছেন। কীভাবে ক্লান্তিকর ও হতাশার অনুমতিগুলিতে উইন্ডোজটিতে অনুরোধ জানানো হয় এবং ত্রুটিগুলি হয় তা কথায় কথায় প্রকাশ করতে পারে না। আমি একজন প্রশাসক!
ডেভিড মাস্টার্স

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

2
আমার জন্যও কাজ করেছেন। এসকিউএল সার্ভার 2019, এসএসএমএস 18.4
রায়ান টমাস

104

সমস্ত মন্তব্যের জন্য আপনাকে ধন্যবাদ। আপনারা কেউ আমাকে উত্তরে নেতৃত্ব দিতে সহায়তা করেছিলেন। আমি যা পেয়েছি তা এখানে:

এটি একটি এনটিএফএসের অনুমতি সমস্যা ছিল এবং এসকিউএল সমস্যা নয়। আরও, এটি দেখতে বাগের মতো (এবং এটি পুনরাবৃত্তযোগ্য) looks

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

যদি আমি সংযুক্তিটি করার চেষ্টা করি, এসকিউএল সার্ভারকে আমার হিসাবে সংযুক্ত করুন (যেখানে আমি প্রশাসকদের গোষ্ঠীতে রয়েছি), এটি এনটিএফএস সমস্যার সাথে ব্যর্থ হয়।

তবে, আমি যদি স্থানীয় প্রশাসক গোষ্ঠীটি আমার ডোমেন অ্যাকাউন্টে সরাসরি একই ফাইল অনুমতি প্রদান করি তবে আমি কোনও সমস্যা ছাড়াই সংযুক্ত করতে পারি।

(ওহ, এবং হ্যাঁ, আমি এই মেশিনে স্থানীয় গোষ্ঠীগুলি পরীক্ষা করেছি এবং আমি যাচাই করেছি যে আমার ডোমেন অ্যাকাউন্টটি অবশ্যই স্থানীয় প্রশাসকদের গোষ্ঠীর একজন সদস্য)।

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

এটি আমার কাছে অদ্ভুত মনে হলেও আমি এটি বারবার পুনরুত্পাদন করতে পারি, তাই আমি সিদ্ধান্তে পৌঁছেছি যে এটিই উত্তর।

আপডেট: আমি এটিকে বাগ হিসাবে রিপোর্ট করেছি: https://connect.microsoft.com/SQLServer/feedback/details/539703/access-denied-attaching-a-database-when-permitted-are-inherised


104
যদি আমার মতো আপনিও উইন্ডোজ using ব্যবহার করছেন তবে এই ত্রুটিটি এড়াতে আপনাকে প্রশাসক হিসাবে এসকিউএল সার্ভার ম্যানেজমেন্ট স্টুডিও চালাতে হবে।
অ্যান্টনি

4
এসএস ২০০8 এক্সপ্রেস ব্যবহার করে উইন 7 প্রোতে পুনরুত্পাদন করা। Sqlcmd এবং SSMS উভয়ের জন্য একই সমস্যা। == মেলডাং '5120', এবেইন '16', স্থিতি '101', সার্ভার 'ডাগো \ স্ক্ল্যাকএক্সপ্রেস', জেইল 1 - 'ডাই ফিজিচে ডেটি' ডি: \ ডেটা \ এমএসকিএল \ drei.mdf 'কান নিচ জেফনেট ওয়ার্ডেন। Betriebssystemfehler 5: '5 (Zugriff verweigert) == ব্যবহারকারীর (যিনি স্থানীয় প্রশাসক গোষ্ঠীর সদস্য, যার অ্যাক্সেস রয়েছে) সম্পূর্ণ অ্যাক্সেস দেওয়ার ফলে সমস্যাটি সমাধান হয়ে যায়। এছাড়াও, প্রশাসক হিসাবে sqlcmd (বা এসএসএমএস,) অনুমান করে এই ত্রুটিটি উত্পাদন করে না।
লুমি

1
অ্যান্টনি হাইস্কির উত্তর আছে। অ্যাডমিনিস্ট্রেটর হিসাবে ম্যানেজমেন্ট স্টুডিও চালানোর জন্য কেবল নিশ্চিত হওয়া দরকার।
জেমস

আমার জন্য একই সমস্যা এবং সমাধান solution ২০০৮ আর ২, উইন,, ইত্যাদি সুরক্ষা তালিকায় নিজেকে স্পষ্টভাবে জুড়েছি এবং এটি কার্যকর হয়েছে। আমি মনে করি যে এসকিউএল সার্ভার সেগুলি পড়তে পারে, একবার সংযুক্ত, তবে সংযুক্তির সময় আমার শংসাপত্রগুলির অধীনে নয়?
অ্যান্ড্রু ব্যাকার

4
প্রশাসক হিসাবে পরিচালনা স্টুডিও চালানো আমার পক্ষে কাজ করেনি। উইন্ডো পরিষেবা চালু করার চেষ্টা করার সময় এই ত্রুটি ঘটে।
নুজোলিলো

20

আমি পোস্ট করা উত্তরগুলিতে অতিরিক্ত তথ্য যুক্ত করতে চাই।

ডাটাবেসটিকে বিচ্ছিন্ন করার সময় সাবধানতা অবলম্বন করুন কারণ আপনি যে উইন্ডো ব্যবহারকারীর জন্য লগ ইন করেছেন তা কেবলমাত্র এমডিএফ ফাইলের অনুমতি নিয়েই ব্যবহারকারী হয়ে ওঠে! .Mdf ফাইলটিতে মূল অনুমতি যা ব্যবহারকারীর অন্তর্ভুক্ত ছিলSQLServerMSSQLUser$<computer_name>$<instance_name> এবং প্রশাসকগণের অ্যাকাউন্ট আপনি যে উইন্ডোজ ব্যবহারকারী হিসাবে লগ ইন করেছেন (স্কয়ার সার্ভার ব্যবহারকারী নয়) এর উপরে ওভাররাইট হয়ে যায়। বুম, সমস্ত অনুমতিগুলি ঠিক সেভাবে চলে গেছে। অন্যরা যেমন বলেছে তেমন করুন এবং আপনার .mdf ফাইলটিতে ডান ক্লিক করুন এবং অনুমতিগুলি ডাবল চেক করুন।

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

আসল অনুমতিগুলি কৌশলে রাখার জন্য আপনার ডাটাবেসটি অফলাইনে নেওয়া উচিত, তারপরে বিচ্ছিন্ন করুন, তারপরে এই ক্রমে সংযুক্ত করুন:

USE [master]
GO
-- kick all users out of the db
ALTER DATABASE mydb
SET SINGLE_USER WITH ROLLBACK IMMEDIATE 
GO

-- Take the Database Offline
ALTER DATABASE mydb SET OFFLINE WITH
ROLLBACK IMMEDIATE
GO

-- detach the db
EXEC master.dbo.sp_detach_db @dbname = N'mydb'
GO

1
এর জন্য ধন্যবাদ! আমি মনে করি যে আপনি যদি সার্ভারডমিন সুবিধা সহ কোনও এসকিউএল সার্ভার প্রমাণীকৃত অ্যাকাউন্ট ব্যবহার করে লগইন করেন তবে এটি সঠিকভাবে পাওয়া সহজতর।
উইলিয়াম রোজ

দুর্ভাগ্যক্রমে, আমি যদি উইন্ডোজ ব্যবহারকারীর পরিবর্তে ডেটাবেসটিকে 'সা' হিসাবে তৈরি করি তবে এটি আমার কোনও
ডেভিড গার্ডিনার

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

18

আপনার .mdfফাইলটি যেখানে রয়েছে সেই ফোল্ডারে অনুমতি যুক্ত করুন ।

এই নামটি পরীক্ষা করুন: NT Service\MSSQLSERVER

এবং Locationআপনার সার্ভার নাম পরিবর্তন করুন ।


5
সঠিক অ্যাকাউন্ট নাম খুঁজে পেতে, যেহেতু এটি উদাহরণস্বরূপ থেকে উদাহরণস্বরূপ বিভিন্ন রকমের হতে পারে, এই সঞ্চালন করুন: SELECT servicename, service_account FROM sys.dm_server_services
সায়স্তাদ

13

এই সমস্যাটি ইউএসি (ব্যবহারকারী অ্যাকাউন্ট নিয়ন্ত্রণ) দ্বারা সৃষ্ট, তাই না? যদিও আপনার ব্যবহারকারীর অ্যাকাউন্ট প্রশাসক গোষ্ঠীর সদস্য, তবে উইন্ডোজ in এর ইউএসি আপনাকে প্রশাসক হিসাবে কাজগুলি চালানোর অনুমতি দেয় না যদি আপনি "প্রশাসক হিসাবে" প্রোগ্রাম পরিচালনা না করেন। এটি এসকিউএল সার্ভার বা ম্যানেজমেন্ট স্টুডিও বা যে কোনও কিছুতে আসল বাগ নয়। (যদিও এটি সম্ভবত সমস্যাটি জানতে পারে এবং আপনাকে কেবল "ত্রুটি 5" অভিযোগ করার পরিবর্তে উন্নত অনুমতি চাইবে))


11

প্রশাসক হিসাবে এসকিউএল সার্ভার ম্যানেজমেন্ট স্টুডিও চালান। (ডান ক্লিক-> প্রশাসক হিসাবে চালানো) উইন্ডোজ 7 - এসকিউএল সার্ভার 2008 আর 2 এর সাথে আমার জন্য কাজ করেছে


1
এই উত্তর upvated করা উচিত। প্রশাসক হিসাবে এসএসএমএস চালানো এমন একটি কাজ যা এই উত্তরটির প্রতিরূপ তৈরি করে। মাইক্রোসফ্ট এটিকে এখানে "প্রত্যাশিত আচরণ" হিসাবে প্রতিবেদন করেছে: লিঙ্ক
ফ্রি টেক্সট

এটাই কি মান্ডোম্যান্ডোর জবাবের মতো নয়?
মর্টব

10

একটি এসকিউএল ২০০৫ ডাটাবেস উইন্ডোজ in-তে এইভাবে সংযুক্ত করা যেতে পারে:

start menu >
 all program >
  Microsoft sql server 2005 >
   sql server management studio >
    right click >
     run as administrator >
      click ok

এবং তারপরে সংযুক্ত ডাটাবেস সফলভাবে সম্পন্ন হয়েছে।


এই উইন্ডোজ 10 :) সঙ্গে ম্যানেজমেন্ট স্টুডিও 2008 R2 হলো SQL সার্ভার 2016 সঙ্গে কাজ
সমাবস্থা

9

আপনি যখন sa(বা কোনও এসকিএল সার্ভার অ্যাকাউন্ট) হিসাবে লগইন করেন , আপনি এসকিউএল সার্ভার পরিষেবা অ্যাকাউন্ট হিসাবে কাজ করছেন, আপনি যখন লগ ইন করেন তখন আপনার অ্যাকাউন্টের অনুমতি থাকে। কিছু কারণে আপনার কাছে উপযুক্ত ফাইল অ্যাক্সেস নেই তবে পরিষেবা অ্যাকাউন্টে।


এনটিএফএস ইস্যুটি প্রথম বিষয়টি ছিল যা আমিও ভেবেছিলাম, তবে বিষয়টি মনে হয় না: আমি স্থানীয় প্রশাসকদের গোষ্ঠীর একজন সদস্য এবং আমি যাচাই করেছিলাম যে এমডিএফ এবং এলডিএফ ফাইলগুলিতে অ্যাডমিনদের "সম্পূর্ণ নিয়ন্ত্রণ" অনুমতি রয়েছে । এছাড়াও, আমি ফাইলগুলির মালিক - আমি কেবল একটি ডিরেক্টরি তৈরি করেছি এবং mdf / ldf ফাইলগুলি তাদের নিজের জায়গায় অনুলিপি করেছি।
জেমার্চ

@ জেমার্চ: @ নিক বলছেন যে 'সা' এর এসকিউএলএসএভারওয়ার রাইটস রয়েছে - এনটিএফএস অধিকার নয় - যা আপনার অ্যাকাউন্টে নেই।
ট্র্যাভোকে

@ ট্র্যাভোক: আমি আপনার সাথে আছি যদি তা হয় তবে আমার ব্যবহারকারীর অ্যাকাউন্টে আমার কী অধিকারগুলি অর্পণ করতে হবে? (আমি ইতিমধ্যে
সিসাদমিন

1
পুরানো উত্তর, এটি, তবে আমার মতো লোকদের জন্য পাঁচ মিনিট আগে: আপনি চালিয়ে সঠিক পরিষেবাটির ব্যবহারকারীর নামটি খুঁজে পেতে পারেনSELECT servicename, service_account FROM sys.dm_server_services
Arve Systad

6

আমি এই সমাধানটি পেয়েছি: যেখানে আপনি আপনার .mdf ফাইলটি সংরক্ষণ করেন - ফোল্ডারে রাইট ক্লিক করুন -> বৈশিষ্ট্যগুলি ক্লিক করুন -> সুরক্ষা ট্যাব নির্বাচন করুন, সম্পাদনা ক্লিক করুন ... এবং এটি সম্পূর্ণ নিয়ন্ত্রণ দিন। আশাকরি এটা সাহায্য করবে!


5

saব্যবহারকারী এনটিএফএস অ্যাকাউন্ট ব্যবহার SQLServerMSSQLUser$<computer_name>$<instance_name>এবং SQLServerSQLAgentUser$<computer_name>$<instance_name>অ্যাক্সেস করতে ডাটাবেসের ফাইল। আপনি একজন বা এই উভয় ব্যবহারকারীর জন্য অনুমতি যুক্ত করার চেষ্টা করতে পারেন।

আমি জানি না যেহেতু আপনি বলছেন যে আপনার saব্যবহারকারীর সাথে কোনও সমস্যা নেই তবে আমি আশা করি এটি আপনার সহায়তা করবে।


5

আমার সাথে - উইন্ডো 8 এ চলছে - রিগট এসকিউএল সার্ভার ম্যানেজার স্টুডিওতে ক্লিক করুন -> প্রশাসকের সাথে চালান। -> কোন সমস্যা সংযুক্ত করুন


5

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


3

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

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


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

@ জেমার্চ: হ্যাঁ .. ডিরেক্টরিগুলি ডিফল্ট ডেটা এবং লগ অবস্থানের জন্য সার্ভার প্রোপার্টি> ডেটাবেস সেটিংস ট্যাব থেকে আসলে কনফিগার করা যায় ...
নয়

এটি ডিফল্টগুলি কভার করে তবে এটি কেবলমাত্র ডিফল্ট। এটি অন্য কোথাও ডিবিএস স্থাপন সম্পূর্ণভাবে গ্রহণযোগ্য এবং আপনার সার্ভারটি যদি সক্রিয়ভাবে ব্যবহৃত 1 টির বেশি ডাটাবেস পরিচালনা করে থাকে তবে তা অস্বাভাবিকও নয়।
জেমার্চ

এমনকি ডিফল্ট স্কেল সার্ভার ডিরেক্টরিতেও আমার একই সমস্যা রয়েছে: সি: \ প্রোগ্রাম ফাইলস \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ এমএসএসকিউএল 10_50.SPATIAL_IM \ এমএসএসকিউএল \ ডেটা \ mydb.mdf win7 এ।
goku_da_master

3

আমি কেবল এই তথ্যটি যুক্ত করতে চেয়েছিলাম।

http://www.mssqltips.com/sqlservertip/2528/database-attach-failure-in-sql-server-2008-r2/

সমাধান

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

আমরা যখন ডাটাবেস ফাইলগুলি বিচ্ছিন্ন করি তখন মালিক সেই ব্যক্তি হয়ে যায় যিনি বিচ্ছিন্ন কমান্ডটি করেছিলেন, সুতরাং সমস্যাটি সমাধানের জন্য আমাদের এমডিএফ এবং এলডিএফ ফাইলগুলির মালিক হিসাবে অন্য লগইন পরিবর্তন বা যুক্ত করতে হবে।

"Filename.mdf" ফাইলটিতে ডান ক্লিক করুন এবং এমডিএফ ফাইলের অনুমতি পরীক্ষা করার জন্য বৈশিষ্ট্যগুলি নির্বাচন করুন। এখানে আমরা দেখতে পাচ্ছি যে শুধুমাত্র একটি অ্যাকাউন্টে "ফাইলের নাম.এমডিএফ" ফাইলের অনুমতি রয়েছে কারণ এটি সেই অ্যাকাউন্ট যা ডেটাবেস বিচ্ছিন্ন করার জন্য ব্যবহৃত হয়েছিল।

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


আমি এসএসএমএসে আমার সংযোগটি পরিবর্তিত করেছি যিনি বিচ্ছিন্নভাবে সম্পাদন করেছেন এমন ব্যবহারকারীকে মেলে এবং আমি সংযুক্তিটি সম্পাদন করতে সক্ষম হয়েছি।
গ্লিটসফা

2

আমার যে সমস্যাটির বিশেষ প্রকরণ রয়েছে তার কারও পক্ষে এটি মূল্যবান:

  • এসকিউএল এক্সপ্রেস 2008
  • ভিজ্যুয়াল স্টুডিও 2010 প্রিমিয়াম

অ্যাপ_ডাটা ফোল্ডারের প্রসঙ্গ মেনুটির মাধ্যমে আমি ডিবাগিংয়ের উদ্দেশ্যে একটি এসকিউএল এক্সপ্রেস ডাটাবেস তৈরি করেছি। সংযোগের স্ট্রিং (এনএইচবারনেট দ্বারা ব্যবহৃত) নিম্নরূপ ছিল:

Server=.\SQLExpress;
AttachDbFilename=|DataDirectory|DebugDatabase.mdf;
Database=DebugDatabase;
Trusted_Connection=Yes;

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

অবশেষে যা সমাধান হয়েছিল তা হ'ল ভিজ্যুয়াল স্টুডিওতে সার্ভার এক্সপ্লোরার খোলা, তারপরে MDF এর সাথে সংযুক্ত হওয়া এবং এটি আবার আলাদা করা। আমি করার পরে আমার ওয়েব অ্যাপ্লিকেশনটি ঠিকঠাকভাবে ডাটাবেস অ্যাক্সেস করতে পারে।

পুনশ্চ. এই বিশেষ সমস্যাটি গুগল করার সময় ক্রেডিটগুলি আমার এই ব্লগ পোস্টে পাওয়া গেছে, সমস্যাটি সমাধান করার জন্য ডাটাবেস সংযুক্ত / বিচ্ছিন্ন করার ধারণাটি ট্রিগার করে।


2

আমি ডিফল্ট ডেটা ফোল্ডারটি থেকে আমার এসপিএন অ্যাপ_ডাটা ফোল্ডারে একটি ডাটাবেস এমডিএফ স্থানান্তরিত করেছি এবং অনলাইনে ডাটাবেসটি আবার সেট করার চেষ্টা করে এই সমস্যাটির মধ্যে দিয়ে চলেছি।

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

এটি প্রদর্শিত হয় যে মূল ডেটা ফোল্ডারে এই অনুমতিগুলি রয়েছে এবং ফাইলগুলি এর উত্তরাধিকারী। অবশ্যই ফাইল এবং উত্তরাধিকার বিরতি সরান Move

আমি অন্য প্রকল্পের এমডিএফ ফাইল যাচাই করেছিলাম যা আমি সরাসরি এর অ্যাপ_ডাটা ফোল্ডারে তৈরি করেছি। এটিতে এমএসএসকিউএল-স্কেলএক্সপ্রেস অনুমতি নেই। হুম। আমি ভাবছি এসকিউএল এক্সপ্রেস কেন অন্য একটির পছন্দ করে না?


কোনও লগ ফাইলকে একটি পৃথক ডিস্কে স্থানান্তরিত করার সময় এই সমাধানটি উইন্ডোজ 10 এবং এসকিউএল সার্ভার 2017 এ কাজ করেছিল। আমার ক্ষেত্রে ব্যবহারকারীর নামটি ছিল "এনটি সার্ভিস \ এমএসএসকিউএসএল সার্ভার"
জন হ্যানলি

1

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


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

ডাটাবেস সংযুক্ত করার চেষ্টা করুন। লগ ইন হিসাবে Windows authenticated userআমাদের ডাটাবেস ফাইলের অনুমতি কাটিয়ে উঠতে সাহায্য করবে। (এই ক্ষেত্রে, উইন্ডোজ ওএস রয়েছে যা ডিস্কে এমএস এসকিউএল সার্ভার উদাহরণ)।
Nhu Vy

1

একটি ডাটাবেস সংযুক্ত করার সময় আমার একই সমস্যা ছিল। এটি কোনও এসকিউএল সমস্যা ছিল না এটি একটি অ্যাকাউন্টের সমস্যা ছিল। প্যানেল নিয়ন্ত্রণ / ব্যবহারকারী অ্যাকাউন্ট নিয়ন্ত্রণ সেটিংসে যান / "কখনই অবহিত করবেন না" তে সেট করুন। অবশেষে, কম্পিউটারটি পুনরায় চালু করুন এবং এটি আমার পক্ষে কাজ করে।


1

আমি ডাটাবেসটিতে ডান ক্লিক করে এবং উইজার্ডের অ্যাডভেঞ্চারওয়র্কস ২০১২_ডাটা_লগ.ল্ডফ লগ ফাইলটি সরিয়ে আমি এমডিএফ ফাইলটি সংযুক্ত করেছি। Mdf ফাইলটি নিম্নলিখিত স্থানে স্থাপন করা হয়েছিল

    C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA

উপরের পদ্ধতিটি আমাকে সমস্যা সমাধানে সহায়তা করেছে।


1

আমি এই পৃষ্ঠাটি পড়ছিলাম এবং তাদের সেখানে একটি আকর্ষণীয় বাক্য রয়েছে:

সাবধানতা: এই ভূমিকাগুলিতে ব্যবহারকারীদের যুক্ত করার সময় খুব বেছে নিন। উদাহরণস্বরূপ, সিসাদমিন প্রতিটি ডাটাবেসে ডিবো-র মানচিত্র তৈরি করে এবং সা অ্যাকাউন্ট ব্যবহার করে লগ ইন করার সমতুল্য।

অবশ্যই, তাদেরও এটি রয়েছে:

অনুমতিগুলি যা ব্যবহারকারীদের এবং ভূমিকার জন্য মঞ্জুরিপ্রাপ্ত এবং ডাটাবেস নির্দিষ্ট specific সমস্ত অনুমতি একটি DENY ব্যতীত संचयी হয়। ব্যবহারকারী পর্যায়ে বা কোনও ভূমিকা স্তরে অস্বীকৃত অনুমতি সিসাদমিন স্থির সার্ভারের ভূমিকা ব্যতীত অন্যান্য ভূমিকা সদস্যতার মাধ্যমে প্রদত্ত একই অনুমতিটিকে ওভাররাইড করে। (একজন সিসাদমিন সমস্ত সদস্যদের অনুমতি বজায় রাখে, এমনকি যদি তারা কোনও সদস্যের ভূমিকা থাকে তবে তার DENY অনুমতি থাকে))

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

অবশ্যই, মাইক্রোসফ্টের মতে, আপনার এই দুটি পৃষ্ঠাগুলি একবার সন্ধান করা উচিত:
ডেটাবেস পূর্বশর্তগুলির লিঙ্ক

ডেটাবেস ইনস্টল করার লিঙ্ক

আপনি দুষ্টু হচ্ছেন এবং সেগুলি ম্যানুয়ালি সংযুক্ত করার চেষ্টা করছেন :) গুরুতরভাবে যদিও আপনার কাছে অ্যাডভেঞ্চার ওয়ার্কস ২০০৮ ডাটাবেসের জন্য সমস্ত পূর্বশর্ত রয়েছে?
আমি সন্দেহ করি এটি অন্য একটি মাইক্রোসফ্ট বিজোড়তা / প্রান্তের মামলা, তবে আমি ভুল হতে পারি।


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

1

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

USE [master]
GO
CREATE DATABASE [DataBasename] ON 
( FILENAME = N'C:\data\DataBasename.mdf' )
 FOR ATTACH
GO

পরিবর্তন জন্য সংযুক্ত করুন -> ATTACH_FORCE_REBUILD_LOG জন্য

USE [master]
GO
CREATE DATABASE [DataBasename] ON 
( FILENAME = N'C:\data\DataBasename.mdf' )
 FOR ATTACH_FORCE_REBUILD_LOG
GO

ধন্যবাদ, আপনি আমার দিনটি বাঁচিয়েছেন
শাহরোখিয়ান

1

সা হিসাবে আমি এই ত্রুটি পেয়েছি। আমার ক্ষেত্রে, ডাটাবেস সুরক্ষার বিষয়টি বিবেচনা করে না। আমি সবাইকে এমডিএফ এবং এলডিএফ ফাইলগুলিতে সম্পূর্ণ নিয়ন্ত্রণ যুক্ত করেছি, এবং সংযুক্তি ভাল হয়ে গেছে।


1

আমি ভিএস 2019 তে একই সমস্যার মুখোমুখি হয়েছি anyone

  1. আপনার এম / সি তে এসকিউএল এক্সপ্রেস ইনস্টল করা উচিত
  2. পূর্ববর্তী সংস্করণগুলির জন্য ভিএসে (ভিএস 2019- তে এসএসডিটি ইনস্টল করা উচিত - ইনস্টল করার সময় এই উপাদানটি পরীক্ষা করে নেওয়ার বিষয়টি নিশ্চিত করুন) - আপনাকে এই উপাদানটি বাহ্যিকভাবে যোগ করতে হবে
  3. আপনার সংযোগের স্ট্রিংয়ে 'ব্যবহারকারীর দৃষ্টান্ত = সত্য' যুক্ত করুন
  4. আমি মনে করি এর alচ্ছিক - প্রশাসনিক মোডে ভিএস এবং এসকিউএল এক্সপ্রেস খুলুন এবং এসকিউএল এক্সপ্রেসে প্রশাসক হিসাবে লগইন করুন

0

এটি আসলে এনটিএফএস অনুমতি এবং এসকিউএল সার্ভারে একটি অদ্ভুত বাগ। আমি নিশ্চিত না যে উপরের বাগ রিপোর্টটি সঠিক, বা কোনও অতিরিক্ত বাগ উল্লেখ করতে পারে।

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

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

অবশেষে, আমি এমএস এসকিউএল সার্ভার ব্যবহারকারীকে ডিবি-র জন্য .mdf এবং .ldf ফাইলগুলিতে পরিবর্তনগুলি অনুমতিগুলি দিয়েছি।

আমি এখন ডাটাবেস ফাইলগুলিতে সংযুক্ত করতে পারি।


0

আপনি যদি sql সার্ভার 2012 চালনা করেন তবে আপনি একটি এমডিএফ-ফাইলের পুরানো সংস্করণ সংযুক্ত করার চেষ্টা করে এই ত্রুটিটি পেতে পারেন। 2007 সালে এসকিএল সার্ভার থেকে একটি এমডিএফ ফাইল প্রাক্তন।


আমি মনে করি যে অংশটি তুলনামূলকভাবে স্ব-বর্ণনামূলক ছিল। এটি কীভাবে বাছাই করা যায় তা জেনে রাখা ভাল।
dansan

0

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


0

যারা এখানে অন্যান্য সমাধানের সাথে সমস্যাটি সমাধান করতে পারেননি তাদের জন্য নিম্নলিখিত ফিক্সটি আমার পক্ষে কাজ করেছে:

আপনার এসকিউএল সার্ভার ইনস্টলেশন, ডান ক্লিক, বৈশিষ্ট্য, সুরক্ষা ট্যাবে আপনার "ডেটা" ফোল্ডারে যান এবং "নেটওয়র্ক সার্ভিস" ব্যবহারকারীর জন্য সম্পূর্ণ নিয়ন্ত্রণ অনুমতি যুক্ত করুন।

http://decoding.wordpress.com/2008/08/25/sql-server-2005-expess-how-to-fix-error-3417/

(উপরের লিঙ্কটি এসকিউএল 2005 এর জন্য, তবে এটি আমার জন্য একটি এসকিউএল 2008 আর 2 ইনস্টলেশন স্থির করেছে)।

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


0

আমার ক্ষেত্রে সমস্যার সমাধান কী ছিল তা হ'ল:

USE [master]
GO
CREATE DATABASE [AdventureWorks2008R2] ON
( FILENAME = 'C:\Program Files\Microsfot SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\AdventureWors2008R2_Data.mdf')
FOR ATTACH_REBUILD_LOG

0

অন্য ফোল্ডারে ডাটাবেস অনুলিপি করুন এবং "উইন্ডোজ প্রমাণীকরণ" দিয়ে এসকিউএল সার্ভার সংযুক্ত বা লগ ইন করুন

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


0

ডাটাবেসটিকে আলাদা করার পরে এবং ldf এবং mdf ফাইলগুলি ড্রাইভ সি থেকে এফ-তে সরানোর পরে পুনরায় সংযুক্ত করার সময় আমার একই সমস্যা হয়েছিল

এটি ঠিক করার জন্য আমাকে উভয় ফাইলে মালিকের অধিকারের অধ্যক্ষকে যুক্ত করতে হয়েছিল এবং সম্পত্তি সংলাপের সুরক্ষা ট্যাবে এটিতে তাদের সম্পূর্ণ নিয়ন্ত্রণ দিয়েছিলাম।

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