Azure のポータルにこんな表示がでるようになりました。新しい Azure ポータル使ったことなかったな。なれれば新しいポータルも使いやすそうですね。
今日はお休みですが、仕事してますww 仕事の合間に依頼事項(すごい簡単なこと)を記事にしてみたいと思います。インデックスをリビルドして、圧縮もするというものです。(この前も書いたような....)SQL Server 2008 向けなので、注意が必要です。XML インデックス、空間インデックスおよびラージ オブジェクト データ型 (image、text、ntext、varchar(max)、nvarchar(max)、varbinary(max)、および xml) の列が含まれる場合は、REBUILD WITH ONLINE = ON は使用できません。(そうだったなぁ....)下記のような感じですかね。(あ、SQL Server 2008 向けに作りましたが、2008 で検証してませんよ。)
DECLARE @schema_name NVARCHAR(500) DECLARE @table_name NVARCHAR(500) DECLARE @index_name NVARCHAR(500) DECLARE @c_count INT DECLARE @msg NVARCHAR(500) DECLARE @ddlstatement NVARCHAR(500) DECLARE REBUILD_INDEX_LIST CURSOR FOR SELECT s.name, t.name, i.name, cc FROM sys.tables t INNER JOIN sys.schemas s ON t.schema_id = s.schema_id INNER JOIN sys.indexes i ON t.object_id = i.object_id CROSS APPLY ( SELECT COUNT(c.name) FROM sys.columns c INNER JOIN sys.types ty ON c.system_type_id = ty.system_type_id WHERE c.object_id = t.object_id AND (ty.name IN ('image','text','ntext') OR c.max_length = -1) ) AS ca(cc) WHERE NOT EXISTS (SELECT object_id FROM sys.fulltext_indexes WHERE object_id = i.object_id AND unique_index_id = i.index_id) AND i.name IS NOT NULL AND t.is_ms_shipped = 0 ORDER BY s.name, t.name, i.index_id OPEN REBUILD_INDEX_LIST FETCH NEXT FROM REBUILD_INDEX_LIST into @schema_name, @table_name, @index_name, @c_count WHILE @@FETCH_STATUS =0 BEGIN IF @c_count > 0 BEGIN SET @ddlstatement = 'ALTER INDEX '+ @index_name + ' ON ' + @schema_name + '.' + @table_name + ' REBUILD PARTITION = ALL WITH (ONLINE = OFF, DATA_COMPRESSION = PAGE, SORT_IN_TEMPDB = ON )' END ELSE SET @ddlstatement = 'ALTER INDEX '+ @index_name + ' ON ' + @schema_name + '.' + @table_name + ' REBUILD PARTITION = ALL WITH (ONLINE = ON, DATA_COMPRESSION = PAGE, SORT_IN_TEMPDB = ON )' PRINT @ddlstatement PRINT 'GO' FETCH NEXT FROM REBUILD_INDEX_LIST into @schema_name, @table_name, @index_name, @c_count END CLOSE REBUILD_INDEX_LIST DEALLOCATE REBUILD_INDEX_LIST
- image,text,ntext および max 指定されているものは ONLINE = OFF
- XML,空間インデックスもONLINE = OFF
- フルテキストは時間がかかるので除外(ご要望により)
- SQL Server Management Studio のメッセージ部に ALTER 文を出力
上記の通りですが、いかがでしょうか?
bgrks!
- 出版社/メーカー: Microsoft Corporation
- 発売日: 2011/03/22
- メディア: アプリ
- この商品を含むブログを見る