CLR-Assemblys werden in der Datenbank gespeichert und als Teil der Datenbank gespiegelt. Jede Datenbank hat ihre eigene sys.assemblies-Sicht. Wenn Sie die DMV-Datei master.sys.assemblies abfragen, finden Sie die Assemblys für andere Datenbanken im DMV nicht. Es gibt Probleme, die auftreten können, wenn eine Datenbank mit Baugruppen gespiegelt ist. Wenn Sie zum ersten Mal eine Assembly mit externem Zugriff oder UNSAFE verwenden und das Bit TRUSTWORTY verwenden, um die Assembly in Ihrer Datenbank zuzulassen, ist dies während des Wiederherstellungsprozesses beim Failover deaktiviert, sodass Sie es erneut aktivieren müssen. Wenn Sie die Assembly mit einem Zertifikat signiert haben, müssen Sie das Zertifikat und die Anmeldung, die der Assembly auf dem gespiegelten Server zugeordnet sind, manuell erstellen, da dies im Master und nicht in der Datenbank gespeichert ist. Die Assembly wird dort sein, ebenso wie Ihre SQL-Datenbankobjekte, aber es funktioniert möglicherweise nicht. Möglicherweise müssen Sie auch den Namen des Datenbankbesitzers als Teil des Failovers ändern.
http://sqlblog.com/blogs/jonathan_kehayias/archive/2008/03/06/clr-safety-issues-after-database-restore-to-new-server.aspx
Wenn Sie überprüfen wollen, was ich oben gesagt, ein Backup der Benutzerdatenbank mit einer Baugruppe auf sie, und es wieder auf einem anderen Server. Ihre Assembly wird ein Teil der Datenbank sein.