OVH Cloud OVH Cloud

Gestion de connexions

2 réponses
Avatar
Patrick
Bonjour =E0 tous.
J'ai un souci suite =E0 une restauration mal conseill=E9e=20
(vive les consultants) de SQL Server sur un serveur.
J'ai d=FB d=E9sinstaller et r=E9-installer SQL Server. J'ai=20
ensuite restaur=E9 les bases de donn=E9es utilisateurs.
Le pb se situe au niveau des connexions: J'ai not=E9 toutes=20
les informations de chaque login, leur droits sur chacune=20
des bases, etc...
Je peux recr=E9er la connexion, mais je ne peux pas lui=20
redonner les droits qu'elle avait sur une base car le user=20
existe d=E9j=E0 sur cette base.
Quand je v=E9rifie sur la base (par ex dans le role public),=20
effectivement, je vois bien apparaitre le login que je=20
veux recr=E9er.
J'ai bien pens=E9 =E0 effacer le user des roles, mais il=20
restera toujours celui de public que je ne peux pas=20
effacer.
Quelqu'un a-t-il d=E9j=E0 =E9t=E9 confront=E9 au probl=E8me, ou a-t-il=20
une solution =E0 me proposer?

Merci d'avance

2 réponses

Avatar
Patrice Scribe
Je crois comprendre que le problème est :
- tu as des comptes de connexion correctement recréés
- tu as des comptes utilisateurs dans tes bases

Le problème est que le compte utilisateur présent dans la base et le compte
de connexion ne sont plus cohérents (SQL Server utilise un id interne pour
faire la liaison).

Si c'est bien cela la procédure stockée sp_chang_eusers_login permet de
refaire correspondre les deux :
EXECUTE sp_change_user_logins 'Update_One','Compte','Compte'

Par exemple typiquement tu as ce problème lorsque tu sauves une base
utilisateur sur un serveur et que tu la restore sur un autre serveur...

Est-ce ce cas ?

--

"Patrick" a écrit dans le message de news:
0e0901c34544$52718590$
Bonjour à tous.
J'ai un souci suite à une restauration mal conseillée
(vive les consultants) de SQL Server sur un serveur.
J'ai dû désinstaller et ré-installer SQL Server. J'ai
ensuite restauré les bases de données utilisateurs.
Le pb se situe au niveau des connexions: J'ai noté toutes
les informations de chaque login, leur droits sur chacune
des bases, etc...
Je peux recréer la connexion, mais je ne peux pas lui
redonner les droits qu'elle avait sur une base car le user
existe déjà sur cette base.
Quand je vérifie sur la base (par ex dans le role public),
effectivement, je vois bien apparaitre le login que je
veux recréer.
J'ai bien pensé à effacer le user des roles, mais il
restera toujours celui de public que je ne peux pas
effacer.
Quelqu'un a-t-il déjà été confronté au problème, ou a-t-il
une solution à me proposer?

Merci d'avance
Avatar
Patrice Scribe
Je laisse quelqu'un d'autre répondre. Personnellement, je suis plutôt dans
le cas où l'on transfère une seule base au coup par coup et je ne transfère
donc pas tous les comptes de connexion...

--

"Patrick" a écrit dans le message de news:
874001c34552$9cbfb4b0$
C'est à peu de choses près exactement le cas, et ta
solution fonctionne à merveille!
Merci pour le coup de main.
A ce propos, quelle serait la bonne méthode pour exporter
des logins sur un nouveau serveur après restauration des
bases?
Le job de transfert de login fonctionne en partie
puisqu'il a créé les connexions, mais le lien est rompu de
la même manière et va nécessiter l'utilisation de cette
procédure.
Il n'y a pas plus propre...?

-----Message d'origine-----
Je crois comprendre que le problème est :
- tu as des comptes de connexion correctement recréés
- tu as des comptes utilisateurs dans tes bases

Le problème est que le compte utilisateur présent dans la


base et le compte
de connexion ne sont plus cohérents (SQL Server utilise


un id interne pour
faire la liaison).

Si c'est bien cela la procédure stockée


sp_chang_eusers_login permet de
refaire correspondre les deux :
EXECUTE


sp_change_user_logins 'Update_One','Compte','Compte'

Par exemple typiquement tu as ce problème lorsque tu


sauves une base
utilisateur sur un serveur et que tu la restore sur un


autre serveur...

Est-ce ce cas ?

--

"Patrick" a écrit dans le message de


news:
0e0901c34544$52718590$
Bonjour à tous.
J'ai un souci suite à une restauration mal conseillée
(vive les consultants) de SQL Server sur un serveur.
J'ai dû désinstaller et ré-installer SQL Server. J'ai
ensuite restauré les bases de données utilisateurs.
Le pb se situe au niveau des connexions: J'ai noté toutes
les informations de chaque login, leur droits sur chacune
des bases, etc...
Je peux recréer la connexion, mais je ne peux pas lui
redonner les droits qu'elle avait sur une base car le user
existe déjà sur cette base.
Quand je vérifie sur la base (par ex dans le role public),
effectivement, je vois bien apparaitre le login que je
veux recréer.
J'ai bien pensé à effacer le user des roles, mais il
restera toujours celui de public que je ne peux pas
effacer.
Quelqu'un a-t-il déjà été confronté au problème, ou a-t-il
une solution à me proposer?

Merci d'avance

.