現在オフラインです。再接続するためにインターネットの接続を待っています

SQL Server 2005 でのデータベースのミラーリングを使用すると、圧縮操作上のミラー データベースが重複しません。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

937531
現象
Microsoft SQL Server 2005 でのデータベースのミラーリングを使用すると、SQL Server は自動的にミラー データベースをプリンシパル データベースに変更を伝達します。ただし、DBCC SHRINKDATABASE ステートメントまたはプリンシパル データベースを圧縮するのには、DBCC SHRINKFILE ステートメントを実行すると、圧縮操作はミラー データベースには複製されません。
原因
データベース ミラーリングはチェックポイント後、物理的なファイル サイズが変更されます。
回避策

方法 1

この問題を回避するには、master データベースに新しいストアド プロシージャを作成するのには、次のステートメントを実行します。このストアド プロシージャを使用して、DBCC SHRINKDATABASE ステートメントまたは DBCC SHRINKFILE ステートメントを実行するのではなく、プリンシパル データベースを圧縮するのには。
     use master       go       if object_id ('sp_shrink_mirrored_database', 'P') is not null          drop proc sp_shrink_mirrored_database        go       create procedure sp_shrink_mirrored_database @dbname sysname, @target_percent int = null       as       begin         declare @filename sysname         declare @filesize int         declare @sql nvarchar(4000)                  if @target_percent is null           dbcc shrinkdatabase (@dbname)         else            dbcc shrinkdatabase (@dbname, @target_percent)         declare c cursor for          select [name], [size] from sys.master_files where type=0 and database_id = db_id (@dbname)         open c         fetch next from c into @filename, @filesize         while @@fetch_status=0         begin           set @filesize=(@filesize+1)*8           set @sql='alter database [' + @dbname + '] modify file ( name='              + @filename + ', size=' + cast(@filesize as nvarchar) + 'kb )'           execute sp_executesql @sql           fetch next from c into @filename, @filesize         end         close c         deallocate c       end       go
縮小したい場合などは、 mydb このデータベースでは、次のステートメントを実行します。
EXEC sp_shrink_mirrored_database 'mydb'

方法 2

プリンシパル上のファイルを圧縮した後、手動でチェックポイントを発行します。
状況
マイクロソフトでは、この「対象」に記載されているマイクロソフト製品の問題として認識しています。

警告: この資料は、自動翻訳されています

プロパティ

文書番号:937531 - 最終更新日: 08/09/2011 13:30:00 - リビジョン: 6.0

  • kbtshoot kbprb kbexpertiseadvanced kbsql2005engine kbmt KB937531 KbMtja
フィードバック