web-dev-qa-db-ja.com

インデックスの再編成と再構築を心配しているDBAは、データの損失を引き起こす可能性がありますか?

インデックスの断片化が95%を超えるデータベースがいくつかあります。インデックスが再構築されたことはなく、再編成もそれほど進んでいないことがわかります。年間で。

(公平に言えば、これらのテーブルでは自動更新された統計が有効になっているようです。また、公平に言うと、彼はバックアップに注意を払っています。

私が尋ねたとき、DBAはインデックスの再構築または再編成に消極的であると述べました。理由を尋ねると、彼はそれを明確に表現することができませんでした。最終的に彼は潜在的なデータ損失を心配していると述べました。たとえば、データベースの1つは、グレートプレーンズダイナミクスの会計アプリケーションで使用されており、彼は非常に心配しているようでした。

私はDBAではありませんが、私が読んだことから、彼の不安は...理解するのが難しいようです。

次に何をするかわかりません。どのようにすればよいですか?

14

データベースインデックスを再構築しても、データが失われることはありません。ただし、再構築中のインデックスは通常、再構築が完了するまで使用できないため、パフォーマンスが大幅に低下する可能性があります。そのため、影響を受けるシステムがアイドル状態の時間外に行う必要があります。

パラノイアはDBAにとって良いことです-データの損失が心配な場合は、バックアップの適切なテスト(別のシステムに復元し、データがすべて存在することを確認する)をしてもらいます。それでも懸念がある場合は、インデックスを再構築する前に完全バックアップを実行することをお勧めします。

22
voretaq7

インデックスの再構築またはデフラグによるデータ損失のリスクはありません。

6
mrdenny

インデックスの再編成にかかる時間とSQLサーバーの労力は少なくなるため、平日のタイプのインスタンスで実行できます。あなたが言っていることが真実である場合、これまでにないインデックスを再編成しても、サーバーに大きな影響を与える可能性があります。インデックスの再構築は、削除されて再構築されるため、SQLサーバーからかなりの労力を要します。平日の夜に再構築を行うことは、サーバーがインデックスでビジー状態になり、それを使用しているユーザーにサービスを提供しないというリスクに値しません。

私はvoretaq7に同意します。彼がインデックスの操作について心配している場合は、まず開発サーバーまたはテストサーバーで試して、反応を確認してください。

4
RateControl