2009-07-13 7 views
3

SQL Serverデータベース(2008)には、さまざまなことにSQLが使用するいくつかのCLR DLLがあります。SQL Serverミラーリングを使用しているときにCLR DLLがミラー化されていますか?

SQLミラーリングを使用すると、これらのDLLはミラーリングされますか?私たちのDBAはそうは言っていませんが、私はこれが狂っていて、オンラインで多くの情報を見つけることができません。

CLR DLLをミラーリングすることはできますか?

答えて

4

CLRアセンブリはデータベースに格納され、データベースの一部としてミラーリングされます。各データベースには独自のsys.assembliesビューがあり、master.sys.assemblies DMVを照会すると、DMV内の他のデータベースのアセンブリは見つかりません。ミラーリングされたアセンブリを持つデータベースを持つと、遭遇する問題があります。最初に、外部アクセスまたはUNSAFEアセンブリがあり、データベースのアセンブリを許可するためにTRUSTWORTYビットを使用した場合、フェールオーバー時に回復プロセス中に無効になるため、再度有効にする必要があります。証明書を使用してアセンブリに署名した場合は、証明書を作成し、アセンブリに関連付けられたログインをミラーリングされたサーバー上で手動で行う必要があります。これは、データベースではなくマスターに格納されるためです。アセンブリはそこにあり、SQLデータベースオブジェクトもそこにありますが、機能しない可能性があります。また、フェールオーバーの一部としてデータベース所有者名を変更する必要がある場合もあります。

http://sqlblog.com/blogs/jonathan_kehayias/archive/2008/03/06/clr-safety-issues-after-database-restore-to-new-server.aspx

あなたは、私は上記の言うことを検証し、その上にアセンブリを備えたバックアップユーザーデータベースを、別のサーバーに復元する場合。あなたのアセンブリはデータベースの一部になります。

1

Jonathan氏によると、あなたのアセンブリは、msdbや他のデータベースではなく、ミラー化されたアプリケーションデータベースに展開する必要があります。

関連する問題