এসকিউএল সার্ভার ২০০৮ আর 2 ত্রুটি: 15023, ব্যবহারকারী, গোষ্ঠী বা ভূমিকা ইতিমধ্যে বিদ্যমান


16

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

Resolution: 

1. Launch the SQL Server Management Studio and connect to the database server(s) hosting   the Vision and Reporting Server databases. 
2. Expand the security folder. 
3. Select logins and right click on the <username> user and choose properties. 
4. Click the User Mapping tab 
5.Make sure the following databases are selected in the Users mapped to this Login:

    ReportServer
    ReportServerTempDB
    Your Vision databases
    This maps the login/user to the respective databases.
6. As you select each database (including your Vision database), select the db_owner role in the Database role membership for: section. You must select this option for each database.

যখন আমি এটি করি, আমি নিম্নলিখিত ত্রুটিটি পাই:

"Create failed for user '<servername>\<username>'.  User, group, or role '<servername>\<username>' already exists in the current database. (Microsoft SQL Server, Error: 15023)"

আমি এই ত্রুটিটি গুগল করেছি এবং প্রতিটি ডাটাবেসে নিম্নলিখিত কমান্ডটি চেষ্টা করেছি:

 ALTER USER [<username>] WITH LOGIN = [<username>] 

বার্তায় ইঙ্গিত দেওয়া হয়েছে যে কমান্ডগুলি সফলভাবে শেষ হয়েছে তবে আমি উপরের নির্দেশ অনুসারে প্রতিটি ডাটাবেস মানচিত্র করার চেষ্টা করার পরেও আমি উপরের ত্রুটিটি পাচ্ছি।

আমি কী মিস করছি?

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

থটস ??

উত্তর:


12

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

প্রারম্ভিকদের জন্য, যদি এটি কেবল এক বা দু'জন ব্যবহারকারী হয় তবে সত্যই, সহজতম উপায় হ'ল ডাটাবেস ব্যবহারকারীকে পুনরুদ্ধার করা ডাটাবেস থেকে বাদ দেওয়া এবং ইতিমধ্যে একটি বিদ্যমান সার্ভার লগইন সরবরাহ করা, এসএসএমএস ব্যবহার করে সার্ভার লগইনে ডাটাবেস ব্যবহারকারীকে পুনরায় তৈরি করুন। সার্ভার লগইন যদি না থাকে তবে কেবল এটি তৈরি করুন, ব্যবহারকারীর মানচিত্র করুন এবং প্রেস্টো! আমরা দূরে যেতে.

পরবর্তী বিকল্প: আপনি যদি প্রচুর সংখ্যক ব্যবহারকারীর স্থানান্তর করেন তবে sp_help_revlogin ব্যবহার করুন। sp_help_revlogin একটি মাইক্রোসফ্ট সরবরাহিত সঞ্চিত পদ্ধতি যা পাসওয়ার্ড এবং এসআইডি সহ এক সার্ভার থেকে অন্য সার্ভারে লগইনগুলি স্থানান্তরিত করতে সহায়তা করবে। এটি সম্পর্কে একটি ভাল নিবন্ধ এখানে SP_HELP_REVLOGIN


দেখুন support.microsoft.com/en-us/kb/918992 SQL সার্ভার দৃষ্টান্ত মধ্যে লগইন ও পাসওয়ার্ড স্থানান্তর করতে কিভাবে
জেমস জেনকিন্স

3

আমি ব্যবহার Auto_Fix সঙ্গে sp_change_users_loginআমার দেব পরিবেশে যেমন বিষয় (ত্রুটি 15023) ঠিক করতে। সুরক্ষা-সংবেদনশীল পরিস্থিতিতে অটো_ফিক্স ব্যবহার করা এড়িয়ে চলুন।

অটো_ফিক্স: বর্তমান ডাটাবেসে sys.datedia_prصول সূত্র সিস্টেম ক্যাটালগ ভিউতে একটি ব্যবহারকারীর এন্ট্রিটিকে একই নামের একটি এসকিউএল সার্ভার লগইনে লিঙ্ক করে। যদি একই নামের লগইন উপস্থিত না থাকে তবে একটি তৈরি করা হবে। সঠিক লিঙ্কটি বাস্তবে তৈরি হয়েছে তা নিশ্চিত করার জন্য অটো_ফিক্স বিবৃতি থেকে ফলাফল পরীক্ষা করুন। সুরক্ষা-সংবেদনশীল পরিস্থিতিতে অটো_ফিক্স ব্যবহার করা এড়িয়ে চলুন।

sp_change_users_login 'AUTO_FIX', 'myuser'

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

অন্যান্য তথ্যসূত্র:

  1. এসকিউএল সার্ভার ২০০৮ এর ব্যবহারকারী, গোষ্ঠী বা ভূমিকা বর্তমান ডাটাবেসে ইতিমধ্যে বিদ্যমান exists
  2. ফিক্স: ত্রুটি 15023: ব্যবহারকারী ইতিমধ্যে বর্তমান ডেটাবাসে বিদ্যমান
  3. এসকিউএল একটি বিদ্যমান ব্যবহারকারীর জন্য একটি লগইন মানচিত্র

0
ALTER USER [<username>] WITH LOGIN=[<username>]

সঠিক পন্থা।

অন্যথায় যান:

সুরক্ষা> লগইনস> (আপনার ব্যবহারকারীর নাম)> বৈশিষ্ট্য> ব্যবহারকারী ম্যাপিং

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

এবং আপনি যে ডাটাবেসে চান সেটি ব্যবহারকারীকে পুনরায় তৈরি করুন।

আপনি অনাথদের জন্য আপনার ডাটাবেসের প্রসঙ্গে নীচের প্রশ্নটি ব্যবহার করতে পারেন:

select
    dp.name [user_name]
    ,dp.type_desc [user_type]
    ,isnull(sp.name,'Orhphaned!') [login_name]
    ,sp.type_desc [login_type]
from   
    sys.database_principals dp
    left join sys.server_principals sp on (dp.sid = sp.sid)
where
    dp.type in ('S','U','G')
    and dp.principal_id >4
order by sp.name

-4

মাস্টার ডাটাবেসে যান এবং ব্যবহারকারী মুছুন

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