मैं अपने आप को स्थानीय SQL सर्वर आवृत्ति तक कैसे पहुँच प्रदान कर सकता हूँ?


92

मैंने अपने स्थानीय मशीन में SQL Server 2008 R2 स्थापित किया। लेकिन, मैं अधिकारों (या अभाव) के कारण एक नया डेटाबेस नहीं बना सकता।

"जन्म से पहले जारी किए गए डेटाबेस"

इसलिए, मैंने अपने वर्तमान लॉगिन में व्यवस्थापक विशेषाधिकारों को निर्दिष्ट करने का प्रयास किया

"उपयोगकर्ता के पास यह क्रिया करने की अनुमति नहीं है।"

मैंने एक नया लॉगिन बनाने की भी कोशिश की जिसमें विशेषाधिकारों की सुविधा होगी, लेकिन कोई भाग्य नहीं। मैं अपने आप को व्यवस्थापक अधिकार कैसे प्रदान करूं ताकि मैं एक डेटाबेस बना सकूं? मैं फिर से स्थापित कर सकता हूं, लेकिन मुझे पसंद नहीं है।


1
क्या आप SQL सर्वर प्रमाणीकरण या Windows प्रमाणीकरण के माध्यम से कनेक्ट करने का प्रयास कर रहे हैं?
डैरेन

विंडोज प्रमाणीकरण (शीर्षक देखें)। मैं सफलतापूर्वक जुड़ रहा हूं। त्रुटियाँ व्यवस्थापक कार्यों को करने के प्रयास से आती हैं।
SkonJeet

जवाबों:


70

हाँ - ऐसा प्रतीत होता है कि आप SQL सर्वर स्थापित करते समय स्वयं को sysadmin भूमिका में जोड़ना भूल गए। यदि आप अपनी मशीन पर एक स्थानीय व्यवस्थापक हैं, तो यह ब्लॉग पोस्ट आपको SQLCMD का उपयोग करने के लिए बिना पुनर्स्थापित किए बिना SQL सर्वर sysadmin समूह में अपना खाता प्राप्त करने में मदद कर सकता है। यदि आप मुझसे पूछते हैं तो यह SQL सर्वर में एक सुरक्षा छेद है, लेकिन यह इस मामले में आपकी मदद करेगा।


15
यह एक सुरक्षा छेद नहीं है, स्थानीय प्रशासकों को sql सर्वर के अधिकार की आवश्यकता होती है, वास्तव में एक स्थानीय प्रशासक वैसे भी डेटा फ़ाइलों को किसी अन्य मशीन पर कॉपी करके (और फिर यदि आवश्यक हो तो कॉपी करके) sql सर्वर के डेटा तक पहुँचने में सक्षम हो सकता है, इसलिए इसके आसपास आपका एकमात्र तरीका प्रशासनिक अनुमतियों को केवल उन लोगों तक सीमित करना है जो इसके लायक हैं ..
योएल हैल्ब

ऐसा लगता है कि अनइंस्टॉल / रीइंस्टॉल करना आसान है? मुश्किल से! मेरे मामले में, हम दूसरे डोमेन पर चले गए थे; सभी मौजूदा लॉगिन बेकार हैं।
dudeNumber4

8
लिंक मर चुका है (और लिंक केवल जवाब हतोत्साहित किया जाता है)। stackoverflow.com/a/9889484/389424 के मूल ब्लॉग पोस्ट के समान निर्देश हैं
janv8000

81

एक कमांड प्रांप्ट विंडो खोलें। यदि आपके पास पहले से चल रहा SQL सर्वर का डिफ़ॉल्ट उदाहरण है, तो SQL सर्वर सेवा को रोकने के लिए कमांड प्रॉम्प्ट पर निम्न कमांड चलाएँ:

net stop mssqlserver

अब उस निर्देशिका पर जाएं जहां SQL सर्वर स्थापित है। उदाहरण के लिए निर्देशिका इनमें से एक हो सकती है:

C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn

अपनी MSSQL निर्देशिका का चित्रण करें और CDइसे इस प्रकार करें:

CD C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn

अब एकल उपयोगकर्ता मोड में SQL सर्वर शुरू करने के लिए निम्न कमांड चलाएँ। जैसा कि SQLCMDनिर्दिष्ट किया जा रहा है, केवल एक SQLCMDकनेक्शन बनाया जा सकता है (दूसरे कमांड प्रॉम्प्ट विंडो से)।

sqlservr -m"SQLCMD"

अब, उसी उपयोगकर्ता के रूप में एक और कमांड प्रॉम्प्ट विंडो खोलें जो ऊपर एकल उपयोगकर्ता मोड में SQL सर्वर शुरू करता है, और इसमें, रन करें:

sqlcmd

और एंटर दबाएं। अब आप एकल उपयोगकर्ता मोड में चल रहे SQL सर्वर उदाहरण के खिलाफ SQL स्टेटमेंट निष्पादित कर सकते हैं:

create login [<<DOMAIN\USERNAME>>] from windows;

-- For older versions of SQL Server:
EXEC sys.sp_addsrvrolemember @loginame = N'<<DOMAIN\USERNAME>>', @rolename = N'sysadmin';

-- For newer versions of SQL Server:
ALTER SERVER ROLE [sysadmin] ADD MEMBER [<<DOMAIN\USERNAME>>];

GO

स्रोत

अद्यतन के बाद एक अर्धविराम को न भूलें ALTER SERVER ROLE [sysadmin] ADD MEMBER [<<DOMAIN\USERNAME>>];और इसके बाद अतिरिक्त अर्धविराम न जोड़ें GOया कमांड कभी भी निष्पादित न हो।


त्वरित ध्यान दें कि sp_addsrvrolemember द्वारा अधिगृहीत किया गया है ALTER SERVER ROLE। जैसेALTER SERVER ROLE [sysadmin] ADD MEMBER [domain\username]
फर्मिन

GO;अंत में जोड़ना न भूलें
NMrt

यह देखते हुए कि हम में से बहुत से लोग अब SSMS के बिना SQL सर्वर चला रहे हैं , मुझे लगता है कि यह एक बेहतर उत्तर है।
चैम एलियाह

38

मैंने एक एसक्यूएल 2012 डेटाबेस को अपनाया, जहां मैं सिसडमिन नहीं था, लेकिन मशीन पर एक प्रशासक था। मैंने "रन एज एडमिनिस्ट्रेटर" के साथ SSMS का उपयोग किया, अपने NT खाते को SQL लॉगिन के रूप में जोड़ा और सर्वर रोल को sysadmin पर सेट किया। कोई दिक्कत नहीं है।


14
इस समाधान ने मेरे लिए काम किया, जिसमें एक अतिरिक्त कदम की आवश्यकता थी: "-m" ध्वज को जोड़कर एकल उपयोगकर्ता मोड में एसक्यूएल सर्वर शुरू करना था। यह "SQL सर्वर कॉन्फ़िगरेशन प्रबंधक" का उपयोग करके किया जा सकता है, सर्वर आवृत्ति पर राइट क्लिक करें और गुणों का चयन करें, टैब "स्टार्टअप पैरामीटर" पर जाएं और -m जोड़ें।
maets

यह कमाल का है। दूसरे उत्तरों की तुलना में इतना सरल।
मैकके

निश्चित रूप से सबसे तेज़ और सभी उत्तरों में सबसे अच्छा
जॉनी

बहुत सीधा और एक आकर्षण की तरह काम करता है। धन्यवाद विंस और मेट्स।
एडगर सलजार

1
यह वास्तव में सही उत्तर है। एक नोट, एकल उपयोगकर्ता मोड में एसक्यूएल प्राप्त करने के लिए मुझे> नेट स्टॉप MSSQL $ SQLEXPRESS और फिर> नेट स्टार्ट MSSQL $ SQLEXPRESS / m
Ev

29

यहां एक स्क्रिप्ट है जो यह तय करने में सक्षम होने का दावा करती है।

इस सरल स्क्रिप्ट के साथ अपने स्थानीय SQL सर्वर एक्सप्रेस के लिए व्यवस्थापक अधिकार प्राप्त करें

स्क्रिप्ट का लिंक डाउनलोड करें

विवरण

यह कमांड स्क्रिप्ट आपको स्थानीय SQL सर्वर इंस्टेंस की sysadmin भूमिका में आसानी से खुद को जोड़ने की अनुमति देता है। आपको Windows स्थानीय व्यवस्थापक समूह का सदस्य होना चाहिए, या उपयोगकर्ता के क्रेडेंशियल्स तक पहुंच होनी चाहिए। स्क्रिप्ट SQL Server 2005 और बाद का समर्थन करता है।

यदि आप किसी अन्य व्यक्ति द्वारा स्थापित SQL Server 2008 एक्सप्रेस का उपयोग करने का प्रयास कर रहे डेवलपर हैं तो स्क्रिप्ट सबसे उपयोगी है। इस स्थिति में आपके पास आमतौर पर SQL Server 2008 एक्सप्रेस उदाहरण के लिए व्यवस्थापक अधिकार नहीं होंगे, क्योंकि डिफ़ॉल्ट रूप से केवल SQL Server 2008 को स्थापित करने वाले व्यक्ति को प्रशासनिक विशेषाधिकार दिया जाता है।

SQL Server 2008 एक्सप्रेस स्थापित करने वाला उपयोगकर्ता आपको आवश्यक विशेषाधिकार देने के लिए SQL सर्वर प्रबंधन स्टूडियो का उपयोग कर सकता है। लेकिन क्या होगा यदि SQL सर्वर प्रबंधन स्टूडियो स्थापित नहीं किया गया था? या इससे भी बदतर अगर इंस्टॉल करने वाला उपयोगकर्ता अब उपलब्ध नहीं है?

यह स्क्रिप्ट कुछ ही क्लिक में समस्या को ठीक करती है!

नोट: आपको एक 'इंस्टेंस नेम' (संभवतः 'MSSQLSERVER' होने जा रहा है - लेकिन यह नहीं हो सकता है) के साथ BAT फ़ाइल प्रदान करने की आवश्यकता होगी: आप पहले "Microsoft SQL Server प्रबंधन कंसोल में निम्नलिखित को चलाकर मान प्राप्त कर सकते हैं ":

 SELECT @@servicename

जब BAT फ़ाइल 'SQL आवृत्ति नाम' के लिए संकेत देती है, तो उपयोग करने के लिए परिणाम की प्रतिलिपि बनाएँ।

  @echo off 
    rem 
    rem **************************************************************************** 
    rem 
    rem    Copyright (c) Microsoft Corporation. All rights reserved. 
    rem    This code is licensed under the Microsoft Public License. 
    rem    THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 
    rem    ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 
    rem    IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 
    rem    PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 
    rem 
    rem **************************************************************************** 
    rem 
    rem CMD script to add a user to the SQL Server sysadmin role 
    rem 
    rem Input:  %1 specifies the instance name to be modified. Defaults to SQLEXPRESS. 
    rem         %2 specifies the principal identity to be added (in the form "<domain>\<user>"). 
    rem            If omitted, the script will request elevation and add the current user (pre-elevation) to the sysadmin role. 
    rem            If provided explicitly, the script is assumed to be running elevated already. 
    rem 
    rem Method: 1) restart the SQL service with the '-m' option, which allows a single connection from a box admin 
    rem            (the box admin is temporarily added to the sysadmin role with this start option) 
    rem         2) connect to the SQL instance and add the user to the sysadmin role 
    rem         3) restart the SQL service for normal connections 
    rem 
    rem Output: Messages indicating success/failure. 
    rem         Note that if elevation is done by this script, a new command process window is created: the output of this 
    rem         window is not directly accessible to the caller. 
    rem 
    rem 
    setlocal 
    set sqlresult=N/A 
    if .%1 == . (set /P sqlinstance=Enter SQL instance name, or default to SQLEXPRESS: ) else (set sqlinstance=%1) 
    if .%sqlinstance% == . (set sqlinstance=SQLEXPRESS) 
    if /I %sqlinstance% == MSSQLSERVER (set sqlservice=MSSQLSERVER) else (set sqlservice=MSSQL$%sqlinstance%) 
    if .%2 == . (set sqllogin="%USERDOMAIN%\%USERNAME%") else (set sqllogin=%2) 
    rem remove enclosing quotes 
    for %%i in (%sqllogin%) do set sqllogin=%%~i 
    @echo Adding '%sqllogin%' to the 'sysadmin' role on SQL Server instance '%sqlinstance%'. 
    @echo Verify the '%sqlservice%' service exists ... 
    set srvstate=0 
    for /F "usebackq tokens=1,3" %%i in (`sc query %sqlservice%`) do if .%%i == .STATE set srvstate=%%j 
    if .%srvstate% == .0 goto existerror 
    rem 
    rem elevate if <domain/user> was defaulted 
    rem 
    if NOT .%2 == . goto continue 
    echo new ActiveXObject("Shell.Application").ShellExecute("cmd.exe", "/D /Q /C pushd \""+WScript.Arguments(0)+"\" & \""+WScript.Arguments(1)+"\" %sqlinstance% \""+WScript.Arguments(2)+"\"", "", "runas"); >"%TEMP%\addsysadmin{7FC2CAE2-2E9E-47a0-ADE5-C43582022EA8}.js" 
    call "%TEMP%\addsysadmin{7FC2CAE2-2E9E-47a0-ADE5-C43582022EA8}.js" "%cd%" %0 "%sqllogin%" 
    del "%TEMP%\addsysadmin{7FC2CAE2-2E9E-47a0-ADE5-C43582022EA8}.js" 
    goto :EOF 
    :continue 
    rem 
    rem determine if the SQL service is running 
    rem 
    set srvstarted=0 
    set srvstate=0 
    for /F "usebackq tokens=1,3" %%i in (`sc query %sqlservice%`) do if .%%i == .STATE set srvstate=%%j 
    if .%srvstate% == .0 goto queryerror 
    rem 
    rem if required, stop the SQL service 
    rem 
    if .%srvstate% == .1 goto startm 
    set srvstarted=1 
    @echo Stop the '%sqlservice%' service ... 
    net stop %sqlservice% 
    if errorlevel 1 goto stoperror 
    :startm 
    rem 
    rem start the SQL service with the '-m' option (single admin connection) and wait until its STATE is '4' (STARTED) 
    rem also use trace flags as follows: 
    rem     3659 - log all errors to errorlog 
    rem     4010 - enable shared memory only (lpc:) 
    rem     4022 - do not start autoprocs 
    rem 
    @echo Start the '%sqlservice%' service in maintenance mode ... 
    sc start %sqlservice% -m -T3659 -T4010 -T4022 >nul 
    if errorlevel 1 goto startmerror 
    :checkstate1 
    set srvstate=0 
    for /F "usebackq tokens=1,3" %%i in (`sc query %sqlservice%`) do if .%%i == .STATE set srvstate=%%j 
    if .%srvstate% == .0 goto queryerror 
    if .%srvstate% == .1 goto startmerror 
    if NOT .%srvstate% == .4 goto checkstate1 
    rem 
    rem add the specified user to the sysadmin role 
    rem access tempdb to avoid a misleading shutdown error 
    rem 
    @echo Add '%sqllogin%' to the 'sysadmin' role ... 
    for /F "usebackq tokens=1,3" %%i in (`sqlcmd -S np:\\.\pipe\SQLLocal\%sqlinstance% -E -Q "create table #foo (bar int); declare @rc int; execute @rc = sp_addsrvrolemember '$(sqllogin)', 'sysadmin'; print 'RETURN_CODE : '+CAST(@rc as char)"`) do if .%%i == .RETURN_CODE set sqlresult=%%j 
    rem 
    rem stop the SQL service 
    rem 
    @echo Stop the '%sqlservice%' service ... 
    net stop %sqlservice% 
    if errorlevel 1 goto stoperror 
    if .%srvstarted% == .0 goto exit 
    rem 
    rem start the SQL service for normal connections 
    rem 
    net start %sqlservice% 
    if errorlevel 1 goto starterror 
    goto exit 
    rem 
    rem handle unexpected errors 
    rem 
    :existerror 
    sc query %sqlservice% 
    @echo '%sqlservice%' service is invalid 
    goto exit 
    :queryerror 
    @echo 'sc query %sqlservice%' failed 
    goto exit 
    :stoperror 
    @echo 'net stop %sqlservice%' failed 
    goto exit 
    :startmerror 
    @echo 'sc start %sqlservice% -m' failed 
    goto exit 
    :starterror 
    @echo 'net start %sqlservice%' failed 
    goto exit 
    :exit 
    if .%sqlresult% == .0 (@echo '%sqllogin%' was successfully added to the 'sysadmin' role.) else (@echo '%sqllogin%' was NOT added to the 'sysadmin' role: SQL return code is %sqlresult%.) 
    endlocal 
    pause

2
मेरे लिए काम किया। एक बात को ध्यान में रखें, सुनिश्चित करें कि आपके पास .js एक्सटेंशन मैप किया हुआ है Microsoft ® Windows Based Script Hostअन्यथा यह वूडू काम नहीं करेगा (मुझे notepad.exe पर मेरा मैप किया गया था)।
फिल कूपर

2
लिंक मृत हैं - "आर्काइव गैलरी को सेवानिवृत्त कर दिया गया है"।
स्टुअर्टड

3
@stuartd - स्क्रिप्ट जोड़ी गई
क्रिस

यदि आप उपरोक्त स्क्रिप्ट का उपयोग करके अपने आप को व्यवस्थापक के रूप में जोड़ने वाली समस्या का सामना कर रहे हैं। डेटाबेस में अपना लॉगिन जोड़ने का प्रयास करें और फिर स्क्रिप्ट चलाएं।
राम

2
किसी ने इसे GitHub में जोड़ा। यह स्क्रिप्ट एक वास्तविक समय है। gist.github.com/wadewegner/1677788
पैट्रिक

6

Microsoft के पास इस समस्या के बारे में एक लेख है। यह कदम से कदम के माध्यम से यह सब हो जाता है।

https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/connect-to-sql-server-when-system-administrators-are-locked-out

संक्षेप में इसमें -mअन्य सभी उत्तरों के सुझाव के साथ वर्गस्वर का उदाहरण शुरू करना शामिल है। हालाँकि Microsoft थोड़ा और विस्तृत निर्देश प्रदान करता है।

प्रारंभ पृष्ठ से, SQL सर्वर प्रबंधन स्टूडियो प्रारंभ करें। दृश्य मेनू पर, पंजीकृत सर्वर का चयन करें। (यदि आपका सर्वर पहले से पंजीकृत नहीं है, तो स्थानीय सर्वर समूह पर राइट-क्लिक करें, कार्य को इंगित करें और फिर स्थानीय सर्वर पंजीकृत करें पर क्लिक करें।)

पंजीकृत सर्वर क्षेत्र में, अपने सर्वर पर राइट-क्लिक करें और फिर SQL सर्वर कॉन्फ़िगरेशन प्रबंधक पर क्लिक करें। इसे व्यवस्थापक के रूप में चलाने की अनुमति मांगनी चाहिए, और फिर कॉन्फ़िगरेशन प्रबंधक प्रोग्राम खोलें।

प्रबंधन स्टूडियो बंद करें।

SQL सर्वर कॉन्फ़िगरेशन प्रबंधक में, बाएँ फलक में, SQL सर्वर सेवाएँ का चयन करें। दाएँ-फलक में, SQL सर्वर का अपना उदाहरण ढूंढें। (SQL सर्वर का डिफ़ॉल्ट उदाहरण में कंप्यूटर का नाम शामिल है (MSSQLSERVER)। नामांकित उदाहरण ऊपरी नाम में उसी नाम के साथ दिखाई देते हैं जो उनके पास पंजीकृत सर्वर में है।) SQL सर्वर के उदाहरण पर राइट-क्लिक करें, और उसके बाद गुण क्लिक करें।

स्टार्टअप पैरामीटर टैब पर, स्टार्टअप पैरामीटर बॉक्स निर्दिष्ट करें, -m टाइप करें और फिर Add पर क्लिक करें। (यह एक पानी का छींटा है तो कम मामला पत्र एम।)

ध्यान दें

SQL सर्वर के कुछ पुराने संस्करणों के लिए कोई स्टार्टअप पैरामीटर टैब नहीं है। उस स्थिति में, उन्नत टैब पर, स्टार्टअप पैरामीटर पर डबल-क्लिक करें। पैरामीटर बहुत छोटी विंडो में खुलते हैं। किसी भी मौजूदा पैरामीटर को बदलने के लिए नहीं सावधान रहें। बहुत अंत में, एक नया पैरामीटर जोड़ें; -m और फिर ठीक पर क्लिक करें। (यह एक अर्ध-बृहदान्त्र है फिर एक पानी का छींटा फिर निचले मामले पत्र एम।)

ठीक क्लिक करें, और संदेश को पुनरारंभ करने के बाद, अपना सर्वर नाम राइट-क्लिक करें, और उसके बाद पुनरारंभ करें क्लिक करें।

SQL सर्वर के पुनरारंभ होने के बाद आपका सर्वर एकल-उपयोगकर्ता मोड में होगा। सुनिश्चित करें कि SQL सर्वर एजेंट नहीं चल रहा है। यदि शुरू किया गया है, तो यह आपका एकमात्र कनेक्शन लेगा।

विंडोज 8 स्टार्ट स्क्रीन पर, प्रबंधन स्टूडियो के लिए आइकन पर राइट-क्लिक करें। स्क्रीन के निचले भाग में, व्यवस्थापक के रूप में रन का चयन करें। (यह SSMS के लिए आपके व्यवस्थापक क्रेडेंशियल्स को पास करेगा।)

ध्यान दें

Windows के पुराने संस्करणों के लिए, व्यवस्थापक के रूप में रन उप-मेनू के रूप में दिखाई देता है।

कुछ कॉन्फ़िगरेशन में, SSMS कई कनेक्शन बनाने का प्रयास करेगा। एकाधिक कनेक्शन विफल हो जाएगा क्योंकि SQL सर्वर एकल-उपयोगकर्ता मोड में है। आप प्रदर्शन करने के लिए निम्नलिखित क्रियाओं में से एक का चयन कर सकते हैं। निम्न में से एक कार्य करें।

a) विंडोज ऑथेंटिकेशन (जिसमें आपका एडमिनिस्ट्रेटर क्रेडेंशियल भी शामिल है) का उपयोग करके ऑब्जेक्ट एक्सप्लोरर से कनेक्ट करें। सुरक्षा का विस्तार करें, लॉगिन का विस्तार करें और अपने लॉगिन पर डबल-क्लिक करें। सर्वर रोल्स पृष्ठ पर, sysadmin का चयन करें और फिर ठीक पर क्लिक करें।

b) ऑब्जेक्ट एक्सप्लोरर से जुड़ने के बजाय, विंडोज ऑथेंटिकेशन (जिसमें आपका एडमिनिस्ट्रेटर क्रेडेंशियल भी शामिल है) का उपयोग करके क्वेरी विंडो से कनेक्ट करें। (आप केवल इस तरह से कनेक्ट कर सकते हैं यदि आपने ऑब्जेक्ट एक्सप्लोरर से कनेक्ट नहीं किया है।) एक नया विंडोज ऑथेंटिकेशन लॉगिन जोड़ने के लिए निम्न कोड निष्पादित करें जो कि sysadmin फिक्स्ड सर्वर रोल का सदस्य है। निम्न उदाहरण CONTOSO \ PatK नामक एक डोमेन उपयोगकर्ता जोड़ता है।

CREATE LOGIN [CONTOSO\PatK] FROM WINDOWS;   ALTER SERVER ROLE
sysadmin ADD MEMBER [CONTOSO\PatK];   

ग) यदि आपका SQL सर्वर मिश्रित प्रमाणीकरण मोड में चल रहा है, तो Windows प्रमाणीकरण (जिसमें आपका व्यवस्थापक क्रेडेंशियल्स शामिल हैं) का उपयोग करके क्वेरी विंडो से कनेक्ट करें। एक नया SQL सर्वर प्रमाणीकरण लॉगिन बनाने के लिए निम्न कोड निष्पादित करें जो sysadmin निश्चित सर्वर भूमिका का सदस्य है।

CREATE LOGIN TempLogin WITH PASSWORD = '************';   ALTER
SERVER ROLE sysadmin ADD MEMBER TempLogin;   

चेतावनी:

एक मजबूत पासवर्ड के साथ ************ बदलें।

d) यदि आपका SQL सर्वर मिश्रित प्रमाणीकरण मोड में चल रहा है और आप sa खाते का पासवर्ड रीसेट करना चाहते हैं, तो Windows प्रमाणीकरण (जिसमें आपका व्यवस्थापक क्रेडेंशियल्स शामिल हैं) का उपयोग करके क्वेरी विंडो से कनेक्ट करें। निम्नलिखित सिंटैक्स के साथ sa खाते का पासवर्ड बदलें।

ALTER LOGIN sa WITH PASSWORD = '************';   Warning

एक मजबूत पासवर्ड के साथ ************ बदलें।

निम्न चरण अब SQL सर्वर को बहु-उपयोगकर्ता मोड में बदलते हैं। SSMS बंद करें।

SQL सर्वर कॉन्फ़िगरेशन प्रबंधक में, बाएँ फलक में, SQL सर्वर सेवाएँ का चयन करें। दाएँ-फलक में SQL सर्वर के उदाहरण पर राइट-क्लिक करें, और उसके बाद गुणक्लिक करें।

स्टार्टअप पैरामीटर टैब पर, मौजूदा पैरामीटर बॉक्स में, चयन करें -m और फिर निकालें पर क्लिक करें।

ध्यान दें

SQL सर्वर के कुछ पुराने संस्करणों के लिए कोई स्टार्टअप पैरामीटर टैब नहीं है। उस स्थिति में, उन्नत टैब पर, स्टार्टअप पैरामीटर पर डबल-क्लिक करें। पैरामीटर बहुत छोटी विंडो में खुलते हैं। जो आपने पहले जोड़ा था, उसे हटा दें और फिर ठीक पर क्लिक करें।

अपना सर्वर नाम राइट-क्लिक करें, और उसके बाद पुनरारंभ करें क्लिक करें।

अब आपको उन खातों में से एक के साथ सामान्य रूप से कनेक्ट करने में सक्षम होना चाहिए जो अब sysadmin फिक्स्ड सर्वर भूमिका के सदस्य हैं।


2

यह वास्तव में Sql सर्वर कॉन्फ़िगरेशन प्रबंधक पर स्टार्टअप मापदंडों को जोड़ने के लिए पर्याप्त है, सेवा को पुनरारंभ करें, अपने खाते पर एक ऐड चेकबॉक्स sysadmin ssms पर जाएं, फिर -m पुनरारंभ करें और हमेशा की तरह उपयोग करें।

डेटाबेस इंजन सेवा स्टार्टअप विकल्प

-m एकल-उपयोगकर्ता मोड में SQL सर्वर का एक उदाहरण प्रारंभ करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.