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 gör att endast en användare kan ansluta 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 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 du återställer en master
-databas i Linux i enanvändarläge finns i Återställa huvuddatabasen i Linux i enanvändarläge.
Allmänna överväganden
Observera följande när du startar en instans av SQL Server i enanvändarläge:
Endast en användare kan ansluta till servern.
KONTROLLPUNKTsprocessen 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. Object Explorer i Management Studio kan misslyckas eftersom det kräver 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 Azure Data Studio eller använda verktyget sqlcmd.
När du använder alternativet -m
med SQLCMD
eller Management Studio kan du begränsa anslutningarna till ett angivet klientprogram.
Notera
På Linux måste SQLCMD
skrivas med versaler som det visas.
Till exempel begränsar -m"SQLCMD"
anslutningar till en enda anslutning och anslutningen måste identifiera sig som sqlcmd klientprogram. 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 använder du -m"Microsoft SQL Server Management Studio - Query"
.
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 klusterresursdllen upp den tillgängliga anslutningen och blockerar därmed alla andra anslutningar till servern. När SQL Server är i det här tillståndet kan försök att starta SQL Server Agent-resursen medföra att SQL-resursen övergår till en annan nod, om resursen har konfigurerats för att påverka gruppen.
Använd följande procedur för att komma runt problemet:
Ta bort
-m
startparametern 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 /m
Kontrollera från klusteradministratören eller redundansklusterhanteringskonsolen att SQL Server-resursen fortfarande är offline.
Anslut till SQL Server nu med följande kommando och utför den nödvändiga åtgärden: SQLCMD -E -S<servernamn>.
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
- CHECKPOINT (Transact-SQL)
- sp_configure (Transact-SQL)
- Startalternativ för Databasmotorstjänsten