岡部 (2011年6月 9日 18:37) 流通システム部
みなさん、こんにちは。 システムをリリースした後は、要望や不具合が様々あり ユーザが直接データをいじれない場合、やむを得ず運用側がDBに接続し、 クエリを流してデータメンテナンスを行うなんてことがあります。 お客様のデータを直接触るわけなので 最新の注意を払って作業を行うことは当然ですが、 意外と"基本"を忘れがちです。 以下に注意点を書きます。 ・バックアップ メンテナンスするテーブルのバックアップを行い、 何か問題があった場合に元に戻せるようにしておくこと。 ・クエリの確認。 必ずクエリを流す前に目視で確認すること。 意外と抜け漏れがあったりします。 本当にそれが正しいのか、まずは疑いましょう。 更にINSERT、DELETE、UPDATEの前と後ろにSELECT文を足して 結果を確認しましょう。 例) ① SELECT * FROM T999_SHAIN ------------------------------------------------------------------------ ② INSERT / DELETE / UPDATE ------------------------------------------------------------------------ ③ SELECT * FROM T999_SHAIN ①と③では抽出結果が違うことを確認しましょう。 ・比較チェック メンテナンスするデータが画面上で見ることが出来るのであれば メンテナンス前と後のキャプチャを取り、最後に比較チェックをすることが 望ましいです。 また、上記作業を単独で行うのではなく、必ず2人以上で声出し確認しながら 進めていくことがミスの軽減に繋がります。 いつでも最悪の事態を想定し、危機感を持ってメンテナンス作業を行いましょう。
データメンテナンス作業の注意事項
岡部 (2011年6月 9日 18:37)
流通システム部
みなさん、こんにちは。
システムをリリースした後は、要望や不具合が様々あり
ユーザが直接データをいじれない場合、やむを得ず運用側がDBに接続し、
クエリを流してデータメンテナンスを行うなんてことがあります。
お客様のデータを直接触るわけなので
最新の注意を払って作業を行うことは当然ですが、
意外と"基本"を忘れがちです。
以下に注意点を書きます。
・バックアップ
メンテナンスするテーブルのバックアップを行い、
何か問題があった場合に元に戻せるようにしておくこと。
・クエリの確認。
必ずクエリを流す前に目視で確認すること。
意外と抜け漏れがあったりします。
本当にそれが正しいのか、まずは疑いましょう。
更にINSERT、DELETE、UPDATEの前と後ろにSELECT文を足して
結果を確認しましょう。
例)
① SELECT * FROM T999_SHAIN
------------------------------------------------------------------------
② INSERT / DELETE / UPDATE
------------------------------------------------------------------------
③ SELECT * FROM T999_SHAIN
①と③では抽出結果が違うことを確認しましょう。
・比較チェック
メンテナンスするデータが画面上で見ることが出来るのであれば
メンテナンス前と後のキャプチャを取り、最後に比較チェックをすることが
望ましいです。
また、上記作業を単独で行うのではなく、必ず2人以上で声出し確認しながら
進めていくことがミスの軽減に繋がります。
いつでも最悪の事態を想定し、危機感を持ってメンテナンス作業を行いましょう。