Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Den här artikeln innehåller information och steg för att starta SQL Server-instansen i enanvändarläge, vilket endast tillåter en användaranslutning till instansen.
Starta instansen i enanvändarläge
Om du startar SQL Server i enanvändarläge kan alla medlemmar i datorns lokala administratörsgrupp ansluta till SQL Server-instansen som medlem i sysadmin fast serverroll. Mer information finns i Anslut till SQL Server när systemadministratörer är utelåsta.
Under vissa omständigheter kan du behöva starta en instans av SQL Server i enanvändarläge med hjälp av alternativet start-m. Du kanske till exempel vill ändra serverkonfigurationsalternativ eller återställa en skadad master databas eller annan systemdatabas. Båda åtgärderna kräver att en instans av SQL Server startas i enanvändarläge.
I följande exempel startas SQL Server-instansen i enanvändarläge via kommandoraden och tillåter endast anslutning via SQL Server Management Studio Query Editor.
net start "SQL Server (MSSQLSERVER)" /m"Microsoft SQL Server Management Studio - Query"
Information om hur master du återställer databasen i SQL Server på Linux i enanvändarläge finns i Återställa huvuddatabasen i Linux i enanvändarläge.
Allmänna överväganden
Observera att när du startar en instans av SQL Server i enanvändarläge:
Endast en användare kan ansluta till servern.
CHECKPOINT-processen körs inte. Som standard körs den automatiskt vid start.
Not
Stoppa SQL Server Agent-tjänsten innan du ansluter till en instans av SQL Server i enanvändarläge. Annars använder SQL Server Agent-tjänsten anslutningen, vilket blockerar den.
När du startar en instans av SQL Server i enanvändarläge kan SQL Server Management Studio ansluta till SQL Server. Det kan gå inte att ansluta Object Explorer i Management Studio eftersom det krävs mer än en anslutning för vissa åtgärder. Om du vill hantera SQL Server i enanvändarläge kör du Transact-SQL-instruktioner genom att ansluta via frågeredigeraren i Management Studio eller använda sqlcmd-verktyget.
När du använder -m alternativet kan du lägga till ett specifikt programnamn för att begränsa anslutningar till endast de med samma programnamn som anges i anslutningssträngen. Verktyget sqlcmd använder SQLCMD som programnamn i anslutningssträngen. Om du anger -mSQLCMD som en startparameter startas SQL Server-instansen i enanvändarläge och anslutningar från andra program än sqlcmd avvisas. Använd det här alternativet när du startar SQL Server i enanvändarläge och ett okänt klientprogram tar den enda tillgängliga anslutningen.
Om du vill ansluta via frågeredigeraren i Management Studio kan du använda -mSSMSQueryEditor och ange App=SSMSQueryEditor på fliken Ytterligare anslutningsparametrar i dialogrutan Anslut till databasmotor .
Not
Programnamnet som anges med startalternativet -m kan vara skiftlägeskänsligt.
Viktig
Använd inte det här alternativet som en säkerhetsfunktion. Klientprogrammet tillhandahåller klientprogrammets namn och kan ange ett falskt namn som en del av anslutningssträngen.
Överväganden för Always On
Det finns ytterligare saker att tänka på när du använder enkelserverläge för SQL Server-instanser som är konfigurerade som en AlwaysOn-redundansklusterinstans (FCI) eller dina databaser ingår i en AlwaysOn-tillgänglighetsgrupp (AG).
Tillgänglighetsgrupper
Start av Always On-tillgänglighetsgruppen och databaserna i gruppen uteblir när SQL Server startas i en-användarläge. Om du behöver felsöka problem med en databas som kräver att SQL Server startas i enanvändarläge, och databasen också ingår i en tillgänglighetsgrupp, måste du ta bort databasen från tillgänglighetsgruppen innan du startar SQL Server i enanvändarläge så att databasen är online.
Redundansklusterinstanser
För SQL Server-installation i en klustrad miljö, när SQL Server startas i enanvändarläge, använder klusterresursens DLL den tillgängliga anslutningen, vilket blockerar alla andra anslutningar till servern. Om SQL Server är i det här tillståndet och du försöker aktivera SQL Server Agent-resursen, kan den överväxla SQL-resursen till en annan nod om resursen är konfigurerad att påverka gruppen.
Använd följande procedur för att komma runt problemet:
Ta bort
-mstartparametern från SQL Server Advanced Properties.Koppla från SQL Server-resursen.
Från den aktuella ägarnoden i den här gruppen utfärdar du följande kommando från kommandotolken:
net start MSSQLSERVER /mKontrollera från klusteradministratören eller redundansklusterhanteringskonsolen att SQL Server-resursen fortfarande är offline.
Anslut till SQL Server med följande kommando och utför den nödvändiga åtgärden:
sqlcmd -E -S\<servername>När åtgärden är klar stänger du kommandotolken och tar tillbaka SQL och andra resurser online via klusteradministratören.
Relaterat innehåll
- Återställ huvuddatabasen i Linux i enanvändarläge
- Starta, Stoppa eller Pausa SQL Server Agent Service-
- Diagnostikanslutning för databasadministratörer
- sqlcmd-verktyget: Ett kommandoradsverktyg för SQL Server
- KONTROLLPUNKT (Transact-SQL)
- sp_configure (Transact-SQL)
- startalternativ för Database Engine Service