Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Cet article fournit des informations et des étapes pour démarrer votre instance SQL Server en mode mono-utilisateur, ce qui autorise une seule connexion utilisateur à l’instance.
Démarrer une instance en mode mono-utilisateur
Le démarrage de SQL Server en mode mono-utilisateur permet aux membres du groupe Administrateurs local de l’ordinateur de se connecter à l’instance de SQL Server en tant que membre du rôle serveur fixe sysadmin. Pour plus d’informations, consultez Se connecter à SQL Server quand les administrateurs système n’y ont plus accès.
Dans certaines circonstances, vous devrez peut-être démarrer une instance de SQL Server en mode mono-utilisateur à l’aide de l’option de démarrage-m. Vous pouvez par exemple modifier les options de configuration du serveur ou rétablir une base de données master ou une autre base de données système endommagée. Les deux actions requièrent le démarrage d’une instance de SQL Server en mode mono-utilisateur.
L’exemple suivant démarre l’instance SQL Server en mode mono-utilisateur via la ligne de commande et autorise uniquement la connexion via l’Éditeur de requête SQL Server Management Studio.
net start "SQL Server (MSSQLSERVER)" /m"Microsoft SQL Server Management Studio - Query"
Pour restaurer la master base de données dans SQL Server sur Linux en mode mono-utilisateur, consultez Restaurer la base de données master sur Linux en mode mono-utilisateur.
Considérations d’ordre général
Lorsque vous démarrez une instance de SQL Server en mode mono-utilisateur, notez que :
Un seul utilisateur peut se connecter au serveur.
Le processus
CHECKPOINTn’est pas exécuté. Par défaut, elle est exécutée automatiquement au démarrage.
Note
Arrêtez le service SQL Server Agent avant de vous connecter à une instance de SQL Server en mode mono-utilisateur ; sinon, le service SQL Server Agent utilise cette connexion et, par conséquent, la bloque.
Lorsque vous démarrez une instance de SQL Server en mode mono-utilisateur, SQL Server Management Studio peut se connecter à SQL Server. La connexion de l’Explorateur d’objets dans Management Studio peut échouer, car elle nécessite plusieurs connexions pour certaines opérations. Pour gérer SQL Server en mode mono-utilisateur, exécutez des instructions Transact-SQL en vous connectant via l’éditeur de requête dans Management Studio ou utilisez l’utilitaire sqlcmd.
Lorsque vous utilisez l’option -m , vous pouvez ajouter un nom d’application spécifique pour restreindre les connexions uniquement à celles dont le nom d’application est spécifié dans la chaîne de connexion. Par exemple, l’utilitaire sqlcmd utilise SQLCMD comme nom d’application dans sa chaîne de connexion. Si vous spécifiez -mSQLCMD comme paramètre de démarrage, l’instance SQL Server est démarrée en mode mono-utilisateur et les connexions à partir d’applications autres que sqlcmd celles rejetées. Utilisez cette option quand vous démarrez SQL Server en mode mono-utilisateur et qu’une application cliente inconnue utilise la seule connexion disponible.
Pour vous connecter via l’éditeur de requête dans Management Studio, utilisez -mSSMSQueryEditor et entrez App=SSMSQueryEditor dans l’onglet Paramètres de connexion supplémentaires de la boîte de dialogue Se connecter au moteur de base de données.
Note
Le nom de l’application spécifié avec l’option de démarrage -m peut respecter la casse.
Importante
N’utilisez pas cette option comme fonctionnalité de sécurité. L’application cliente fournit le nom d’application cliente et peut fournir un nom erroné dans la chaîne de connexion.
Considérations relatives à Always On
Il existe des considérations supplémentaires lors de l’utilisation du mode mono-serveur pour les instances SQL Server configurées en tant qu’instance de cluster de basculement (FCI) Always On, ou vos bases de données font partie d’un groupe de disponibilité (AG) Always On.
Groupes de disponibilité
Le démarrage du groupe de disponibilité Always On et des bases de données dans le groupe est ignoré lorsque SQL Server est démarré en mode mono-utilisateur. Si vous devez résoudre les problèmes liés à une base de données nécessitant le démarrage de SQL Server en mode mono-utilisateur et que la base de données fait également partie d’un groupe de disponibilité, vous devez supprimer la base de données du groupe de disponibilité avant de démarrer SQL Server en mode mono-utilisateur afin que la base de données passe en ligne.
Instances de cluster de basculement
Pour l’installation de SQL Server dans un environnement en cluster, lorsque SQL Server est démarré en mode mono-utilisateur, la DLL de ressource de cluster utilise la connexion disponible, bloquant ainsi toute autre connexion au serveur. Lorsque SQL Server est dans cet état, si vous tentez de mettre la ressource SQL Server Agent en ligne, cela peut entraîner le basculement de la ressource SQL vers un autre nœud si la ressource est configurée de manière à affecter le groupe.
Pour contourner le problème, utilisez la procédure suivante :
Supprimez le paramètre de démarrage
-mdes propriétés avancées de SQL Server.Mettez la ressource SQL Server hors connexion.
À partir du nœud de propriétaire actuel de ce groupe, émettez le commande suivante de l’invite de commandes :
net start MSSQLSERVER /mVérifiez dans la console de l’administrateur de cluster ou de gestion de cluster de basculement que la ressource SQL Server est encore hors connexion.
Connectez-vous à SQL Server à l’aide de la commande suivante et effectuez l’opération nécessaire :
sqlcmd -E -S\<servername>Une fois que l’opération est terminée, fermez l’invite de commandes et remettez les ressources SQL et d’autres ressources en ligne via la console de l’administrateur de cluster.
Contenu associé
- Restaurer la base de données master sur Linux en mode mono-utilisateur
- Démarrer, arrêter ou suspendre le service SQL Server Agent
- Connexion de diagnostic pour les administrateurs de base de données
- Utilitaire sqlcmd.
- CHECKPOINT (Transact-SQL)
- sp_configure (Transact-SQL)
- Options de démarrage du service de moteur de base de données