Sqlserver2008への移行 効率問題
現在、SQLServer2000を使って社内システムを構築しています。
サーバーのハード保守切れに伴い、
SQLServer2008へ移行しようとしています。
移行前の環境は、
OS WindowsServer2000
DB SQLSERVER2000
移行後の環境は、
OS WindowsServer2008R2 Standard (64bit)
DB SQLSERVER2008R2 (64bit)
となります。
移行後、SQLジョブの処理速度が大幅に遅くなることを起きました。
SqlServer2000の頃は、1分程度掛かってSQLジョブを行っていましたが、
SqlServer2008で21時間以上かかり、効率が大幅に遅くなってしてしまいます。
下記のSQL文を実行してみると、インデックスが違うことを分かりました。
SELECT
i.name AS index_name
,o.name AS table_name
,col.name AS column_name
,i.statblob
FROM
sysindexkeys ik
,sysobjects o
,syscolumns col
,sysindexes i
WHERE
ik.id = o.id
AND ik.id = col.id
AND ik.colid = col.colid
AND ik.id = i.id
AND ik.indid = i.indid
AND o.xtype = 'U'
ORDER BY
i.name
,ik.id
,ik.indid
,ik.keyno
違う箇所は、SqlServer2000で「_WA_Sys_」というインデックスがあって、
SqlServer2008上にありません。
(「_WA_Sys_」を除けば、他のインデックスは全く同じです)
上記インデックスの差異は、効率と関係がありますでしょうか。
あれば、どうすればいいでしょうか。
なければ、他の解決案を頂ければ助かります。
ご教授のほど、よろしくお願いいたします。
お礼
自習書シリーズ使えそうですね。本の方もチェックしてみます。 ありがとうございます。