ne peut pas se connecter au serveur SQL en mode mono-utilisateur

10

J'ai commencé mon SQL Server 2008 sqlcst02\inst01en Single User Modeen ajoutant le ;-mà la fin des paramètres de démarrage pour cette instance en SQL Server Configuration Manager. Je me suis arrêté SQL Server Agentpour l' inst01instance. Mon compte est membre de la Domain Admin groupet j'ai tenté de me connecter en utilisant sqlcmd -S sqlcst02\inst01et je reçois toujours une erreur indiquant que le service est en place Single User Modeet un seul administrateur peut être connecté. J'ai essayé d'ajouter ;-m"sqlcmd"aux paramètres de démarrage pour limiter la connexion à juste sqlcmdmais j'obtiens le mêmes résultats. J'ai essayé ceci connecté en tant que mon propre compte et connecté en tant que compte d'administrateur local. J'ai lancé l'invite de commande en tant que moi-même et en tant qu'administrateur, mais j'obtiens les mêmes résultats. J'ai essayé de me connecter en utilisant ADMIN:sqlcst02\inst01in SSMS. Pas de chance.

J'essaie de réinitialiser le samot de passe car aucune de ces informations ne m'a été laissée par l'administrateur précédent. C'est exaspérant. Je l'ai déjà fait sur d'autres machines sans aucun problème.


la source
1
Votre compte de domaine (explicitement ou via un groupe) est-il membre du rôle serveur sysadmin sur l'instance SQL Server?
Brian Knight
Je ne sais pas. Je sais que je suis membre du groupe Administrateur de domaine et d'un groupe SQL ADMINS et que le groupe SQL ADMINS est membre du rôle sysadmin sur tous les autres serveurs. mais je parie que ce n'est pas le cas sur cette machine.
votre SQL s'exécute sur un cluster? dans ce service de cluster a une connexion ouverte à SQL avant vous. Une autre possibilité est que vous ayez un service ou une application qui établit une connexion au serveur SQL en tant qu'administrateur système avant que vous, en tant qu'administrateur, puissiez vous connecter.
SQL Learner
Il n'y a rien de mal avec la connexion, et rien de mal avec la connexion. Si vous arrivez au point de voir l'erreur en mode utilisateur unique, vous devez déterminer ce qui se connecte à l'instance et l'empêcher au moins aussi longtemps qu'il vous faudra pour établir la connexion vous-même.
Jon Seigel

Réponses:

6

Une autre alternative à la récupération de l'accès à un serveur SQL est décrite dans cet article et ne nécessite pas de redémarrage en mode mono-utilisateur:

http://www.mssqltips.com/sqlservertip/2682/recover-access-to-a-sql-server-instance/

Essentiellement, téléchargez PSExec , puis exécutez-le avec la ligne de commande suivante (indiquez votre emplacement SSMS.exe):

PsExec -s -i "C:\Program Files (x86)\...\ssms.exe"

Vous serez invité à vous connecter - le mode d'authentification sera Windows authentifié et codé en dur NT AUTHORITY\SYSTEM. Une fois connecté, vous pourrez accéder à la sécurité et corriger le mot de passe sa, vous ajouter en tant qu'administrateur, ajouter d'autres administrateurs, etc.

L'article ci-dessus contient plusieurs mises en garde que vous devez lire avant d'essayer, et vous pouvez également consulter les commentaires en bas.

Aaron Bertrand
la source
1

Je viens d'être mordu par celui-ci. Ce que j'avais oublié, c'était d'exécuter l'invite CMD en tant qu'administrateur. Ce n'est pas la valeur par défaut dans Windows 2008 R2. Une fois que j'ai fait tout ça allait bien. Un de mes collègues a suggéré ce problème et bon, tout est réglé. Je me sens comme un idiot mais je pensais que je partagerais pour sauver les autres.

Just John
la source
0

OK - si vous n'êtes pas dans le rôle d'administrateur système sur SQL Server, vous ne pourrez pas entrer via le mode mono-utilisateur. Si vous êtes administrateur sur le serveur lui-même, vous pouvez utiliser la réponse de ce post pour vous aider.

Brian Knight
la source
Si vous êtes un administrateur sur le serveur lui-même, vous pouvez vous connecter via le mode mono-utilisateur comme décrit dans la documentation et il traitera la connexion comme si vous étiez dans le sysadminrôle. Pour autant que je sache, c'est exactement ce que fait le billet de blog qui est lié à partir de votre autre lien.
Martin Smith
0

J'ai eu un problème similaire, où j'ai eu un cluster en panne parce que j'ai défini le maxmem à 12 (au lieu de 120000, mon zéro a été cassé apparemment)

J'ai remarqué que lorsque j'utilisais l'invite des paramètres de démarrage normaux et que sqlcmd -AI obtenait des délais d'expiration de connexion, et des messages d'erreur me disant que le DAC n'était probablement pas connecté.

J'ai démarré les services SQL en copiant les paramètres de démarrage du gestionnaire de configuration dans une invite administrative de PowerShell et ajouté les paramètres -cf.

Dans une autre fenêtre, j'ai pu utiliser sqlcmd, mais pas avec le paramètre -A, juste des connexions standard.

À ce stade, j'ai pu exécuter des requêtes et sp_configuré ma sortie. C'était avec un compte de domaine.

ConstantineK
la source