Meilleur auteur de réponses
mot de passe SA perdu

Question
-
Bonjour existe-t-il un moyen de réinitialisé le password SA , en effet un prestataire à fait une install (celui-ci est parti) et personne ne connait ce password donc impossibilité de se connecter sur la base. Il s'agit d'une base SQL 2005 Express.
Merci
Réponses
-
Bonjour David,
Je vous fournis ce lien :
http://social.msdn.microsoft.com/Forums/en/sqlgetstarted/thread/16706dec-209f-42c4-8dc7-4ee4dd5df482
pour le message d'erreur :
http://blogs.msdn.com/b/john_daskalakis/archive/2008/11/20/9128335.aspx
Il y a quelque chose qui me chiffonne dans ce fil : je croyais que , pour SQL Server Expess, le mode d'authentification SQL Server est désactivé par défaut à l'installation, donc pas de sa accessible. Pour SQL Server Express 2005 , lors de l'installation, le bouton , il faut cocher une case spéciale pour pouvoir accéder à un écran qui gére les propriétés avancées.Depuis SQL Server Express 2008, l'accès est directement possible à partir d'un bouton marqué "Propriétés avancées".
Il est aussi possible que la personne qui a installé l'instance SQL Server Express ait "supprimé" le login sa.
Je suis désolé de ne fournir que des liens en anglais, mais c'est sur les forums ( ou blogs ) américains que l'on trouve le plus de renseignements concernant ce sujet.
Bonne journée
Mark Post as helpful if it provides any help.Otherwise,leave it as it is.- Proposé comme réponse Florin Ciuca jeudi 25 août 2011 14:58
- Marqué comme réponse Florin Ciuca mardi 30 août 2011 15:10
-
OK, merci papy pour le lien. D'après l'article de Raul Garcia, celà dit, le redémarrage est seulement nécessaire lorsqu'il n'y a pas d'autre compte sysadmin que sa. Par ex:
--> Création d'un compte SQL sysadmin alternatif create login altsa with password = '@lt$@'; sp_addsrvrolemember @rolename = 'sysadmin', @loginame = 'altsa'; --> Déconnexion / reconnexion avec ce compte altsa // --> Modification du mot de passe sa depuis la connexion altsa: select suser_name(); --------- altsa alter login sa with password = 'unautremotdep@$$' ; --------------------------------- Commande(s) réussie(s).
Donc s'il existe un autre compte sysadmin ça doit être possible sans -m. Il faudrait installer une express pour tester ça, je n'ai qu'une Developper sous la main.A priori le mode d'authent SQL n'est pas désactivé par défaut sur Express 2005: (ref: http://msdn.microsoft.com/en-us/library/ms143722%28v=sql.90%29.aspx). Simplement, sa sera désactivé si tu choisis d'être en mode intégrée seul:
"On the Authentication Mode page, specify the security mode used to connect to your instance of SQL Server. If you select Windows Authentication, Setup creates an sa account that is disabled by default. To activate the sa account after Setup completes, see the How to: Change Server Authentication Mode and ALTER LOGIN (Transact-SQL) topics in SQL Server 2005 Books Online. If you select Mixed Mode Authentication you must set strong passwords for all SQL Server logins. Enter and confirm a strong sa logon password. Click Next. "
David B.- Proposé comme réponse Florin Ciuca jeudi 25 août 2011 14:58
- Marqué comme réponse Florin Ciuca mardi 30 août 2011 15:10
Toutes les réponses
-
Bonjour,
si vous êtes administrateur de la machine, il suffit de lancer SQL Server en mode Single User (sqlserver.exe -m)
puis se logger en sqlcmd -E
et enfin lancer la commande de modification du mot de passe.
Cordialement
- Proposé comme réponse Christian Robert - MCT - MCM lundi 29 août 2011 22:50
-
-
-
-
Dans mon cas:
select description, name from sys.dm_os_loaded_modules where description like '%SQL Server Windows NT%'; GO description name ------------------------------ ------------------------------------------------------------ SQL Server Windows NT C:\UTRECHT\MSSQL.1\MSSQL\Binn\sqlservr.exe
David B. -
-
-
Peut-être pas.
Le serveur doit avoir une instance nommée (SQLEXPRESS certainement).
Il faut ajouter à la commande sqlserver.exe -m -S.\SQLEXPRESS (ou le nom de l'instance. Pour le connaitre, c'est le nom qui apparait entre parenthèse dans le service)
Fred
-
Je ne suis pas sûr qu'il faille démarrer l'instance en mode mono-utilisateur pour remettre un mot de passe à sa. Un compte sysadmin avec une connexion normale doit pouvoir le faire dans le contexte normal.
Sinon pour info, le message d'erreur vient probablement du fait que sqlservr attend le nom de l'instance (-s SQLEXPRESS) lors du démarrage manuel. Donc si vous double-cliquez sur l'exe, c'est normal que ça ne fonctionne pas, c'est une application console.
David B. -
Bonjour David,
Je vous fournis ce lien :
http://social.msdn.microsoft.com/Forums/en/sqlgetstarted/thread/16706dec-209f-42c4-8dc7-4ee4dd5df482
pour le message d'erreur :
http://blogs.msdn.com/b/john_daskalakis/archive/2008/11/20/9128335.aspx
Il y a quelque chose qui me chiffonne dans ce fil : je croyais que , pour SQL Server Expess, le mode d'authentification SQL Server est désactivé par défaut à l'installation, donc pas de sa accessible. Pour SQL Server Express 2005 , lors de l'installation, le bouton , il faut cocher une case spéciale pour pouvoir accéder à un écran qui gére les propriétés avancées.Depuis SQL Server Express 2008, l'accès est directement possible à partir d'un bouton marqué "Propriétés avancées".
Il est aussi possible que la personne qui a installé l'instance SQL Server Express ait "supprimé" le login sa.
Je suis désolé de ne fournir que des liens en anglais, mais c'est sur les forums ( ou blogs ) américains que l'on trouve le plus de renseignements concernant ce sujet.
Bonne journée
Mark Post as helpful if it provides any help.Otherwise,leave it as it is.- Proposé comme réponse Florin Ciuca jeudi 25 août 2011 14:58
- Marqué comme réponse Florin Ciuca mardi 30 août 2011 15:10
-
OK, merci papy pour le lien. D'après l'article de Raul Garcia, celà dit, le redémarrage est seulement nécessaire lorsqu'il n'y a pas d'autre compte sysadmin que sa. Par ex:
--> Création d'un compte SQL sysadmin alternatif create login altsa with password = '@lt$@'; sp_addsrvrolemember @rolename = 'sysadmin', @loginame = 'altsa'; --> Déconnexion / reconnexion avec ce compte altsa // --> Modification du mot de passe sa depuis la connexion altsa: select suser_name(); --------- altsa alter login sa with password = 'unautremotdep@$$' ; --------------------------------- Commande(s) réussie(s).
Donc s'il existe un autre compte sysadmin ça doit être possible sans -m. Il faudrait installer une express pour tester ça, je n'ai qu'une Developper sous la main.A priori le mode d'authent SQL n'est pas désactivé par défaut sur Express 2005: (ref: http://msdn.microsoft.com/en-us/library/ms143722%28v=sql.90%29.aspx). Simplement, sa sera désactivé si tu choisis d'être en mode intégrée seul:
"On the Authentication Mode page, specify the security mode used to connect to your instance of SQL Server. If you select Windows Authentication, Setup creates an sa account that is disabled by default. To activate the sa account after Setup completes, see the How to: Change Server Authentication Mode and ALTER LOGIN (Transact-SQL) topics in SQL Server 2005 Books Online. If you select Mixed Mode Authentication you must set strong passwords for all SQL Server logins. Enter and confirm a strong sa logon password. Click Next. "
David B.- Proposé comme réponse Florin Ciuca jeudi 25 août 2011 14:58
- Marqué comme réponse Florin Ciuca mardi 30 août 2011 15:10
-
-
Bonjour,
Pouvons-nous considérer que vous avez résolu votre problème avec les scénarios proposés ? Dans l'affirmative, pourriez-vous partager avec nous la solution, afin que d'autres personnes avec le même problème puissent profiter de cette solution ?
Désormais, nous marquons les solutions proposées. N'hésitez pas à revenir et supprimer la réponse marquée si la solution n’est pas correcte. Merci !
Cordialement,
Florin
Florin CIUCA, MSFT
Votez! Appel à la contribution
Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.