2012-08-15 10 views
7

के बिना SQL सर्वर प्रमाणीकरण मोड को कैसे बदलें SQL सर्वर प्रबंधन स्टूडियो का उपयोग किए बिना SQL Server 2008 या 2012 में प्राधिकरण मोड को बदलने का कोई तरीका है?प्रबंधन स्टूडियो

+2

आप (http://support.microsoft.com/kb/285097) –

उत्तर

12

यहाँ प्रबंधन स्टूडियो मिश्रित से केवल Windows के लिए प्रमाणीकरण मोड बदलने के लिए करता है:

EXEC xp_instance_regwrite 
    N'HKEY_LOCAL_MACHINE', 
    N'Software\Microsoft\MSSQLServer\MSSQLServer', 
    N'LoginMode', 
    REG_DWORD, 
    1; 

और Windows से केवल वापस मिश्रित करने के लिए:

EXEC xp_instance_regwrite 
    N'HKEY_LOCAL_MACHINE', 
    N'Software\Microsoft\MSSQLServer\MSSQLServer', 
    N'LoginMode', 
    REG_DWORD, 
    2; -- only difference is right here 

आप से एक ही आदेश कॉल कर सकते हैं विभिन्न स्रोत जो एसक्यूएलसीएमडी, पावरशेल, वीबीस्क्रिप्ट, सी # इत्यादि जैसे SQL सर्वर से कनेक्ट हो सकते हैं या आप सीधे सर्वर पर लॉग ऑन कर सकते हैं, उस रजिस्ट्री कुंजी पर नेविगेट कर सकते हैं और मैन्युअल रूप से मान बदल सकते हैं (जैसा कि @marc_s सुझाया गया है)।

ध्यान दें कि सभी मामलों में आपको परिवर्तनों को प्रभावी होने के लिए SQL सर्वर को पुनरारंभ करना होगा। प्रमाणीकरण मोड सही है कि यह सत्यापित करने के लिए आप पुनरारंभ पर नए त्रुटि लॉग में पहली कई प्रविष्टियों को देख सकते हैं। यह (मिश्रित के लिए) कहेंगे:

date/time Server Authentication Mode is MIXED. 
+0

नोट [प्राधिकरण मोड बदलने के लिए रजिस्ट्री tweak] कर सकते हैं: एक नामित उदाहरण के लिए, इस मान 'HKLM \ Software \ Microsoft \ Microsoft SQL Server \ {Instance Name} \ MSSQLServer \ LoginMode' पर स्थित है। – Mitch

+2

@ मिच यह सच है यदि आप स्वयं रजिस्ट्री में खुदाई कर रहे हैं। 'Xp_instance_regwrite' का उपयोग करते समय, हालांकि, इसका पूरा बिंदु यह है कि यह आपके उदाहरण-विशिष्ट शाखा में '... \ MSSQLServer \ MSSQLServer \ ...' का अनुवाद करेगा। '... \ Microsoft SQL Server \ {इंस्टेंस नाम} \ MSSQLServer \ ...' - यदि आपके पास ऐसा कोई मामला है जहां यह काम नहीं करता है, तो कृपया प्रदर्शित करें। –

+0

हम्म। मुझे एहसास नहीं हुआ कि 'xp_instance_regwrite' पथ को ठीक करेगा। धन्यवाद। – Mitch

संबंधित मुद्दे