Ce matin, j'ai remarqué que mon journal SQL remplissait avec le message suivant:
Le processus activé [DGO]. [SP_SYSPOLICY_EVENT_READER] 'Exécuter sur la file d'attente' msdb.dbo.syspolicy_Event_queue 'Sortie suivante:
[
Exécuter ce qui suit EXEC sp_change_users_login 'report'
A révélé que la connexion avait en fait été orphelinée.
J'ai pu résoudre le problème en exécutant ce qui suit comme recommandé dans ce message MSDN .
EXEC sp_change_users_login
'Auto_Fix', '##MS_PolicyEventProcessingLogin##',
NULL, 'fakepassword'
Mais la question reste: que dans le monde aurait causé ce directeur d'avoir été orphelinée en premier lieu? Googling et recherche de la recherche révèlent que D'autres ont eu ce problème Mais je n'ai pas encore trouvé une description de la cause. Rien de note que je suis conscient de se produire au moment où l'erreur a commencé à apparaître.
Nous avons déplacé l'ensemble du serveur dans un modèle de stockage SAN L'été dernier, nous avons tout restauré (y compris MSDB) pendant ce mouvement, mais c'était il y a des mois. Ce n'était que quelque chose de récent qui a rendu le symptôme manifeste car il n'apparaît pas dans le journal plus tôt que quelques semaines il y a quelques semaines.
Nous avons mis à niveau deux serveurs (de SQL 2000) à SQL 2008R2 à l'aide de la mise à niveau sur place. Nous avons commencé à obtenir ces messages dans les journaux SQL après la mise à niveau. Nous n'avons changé ni aucune autre connexion ni utilisateurs au cours du processus de mise à niveau.
Je suppose que le processus de mise à niveau a laissé deux comptes (##MS_PolicyEventProcessingLogin##
et ##MS_PolicyTsqlExecutionLogin##
) orphelined.
EXEC sp_change_users_login 'Auto_Fix', '<User Name>'
Correction de ce problème.
Je pense que vous avez restauré MSDB, mais vous avez eu une nouvelle base de données principale.