
就職して2〜3年目の頃、独立系SIerで働いていたときのこと。
商社のシステム部門に常駐し、保険業務のシステム管理を担当していました。
毎日入力されるデータを処理し、帳票を出したり、精算処理を行ったり。
当時は .NET と Oracle を使っていて、本番環境とテスト環境が用意され、本番データは週3ほどでバックアップされていました。
作業の流れはこんな感じです。
- 本番データをテスト環境にコピー
- テスト環境で修正・検証
- 問題なければ本番環境を更新
ごく普通のルーティン。ところがある日、とんでもないミスをしてしまったのです。
本番環境を誤って削除してしまった日
昼食を終えて、午後の作業に取りかかろうとしたときのこと。
「午前中にテストしたデータを一旦消して、本番からデータをコピーしよう」と思い、テスト環境にログインしたつもりで作業を始めました。
全テーブルを TRUNCATE文 で削除。
※TRUNCATEはDELETEと違い、ロールバックができません。完全に消えます。
と、その直後――
商社の保険部門の担当者から内線。
「データが見れないんですけど・・・」
嫌な汗が流れました。
確認すると、ログインしていたのはテスト環境ではなく本番環境。
つまり、本番環境のすべてのデータを消してしまったのです。
真っ白になった頭と、冷たい手足
全身から血の気が引き、頭の中は真っ白。
とりあえず「確認します」と伝えて電話を切り、すぐに上司へ報告しました。
そこからは怒涛のような時間でした。
上司が関係各所に連絡し、保険部門の部長にも報告がいきます。
状況を整理しながら、まずはバックアップからの復元を決定。
ただ、「バックアップを戻せば終わり」という単純なものではありませんでした。
- 復元作業を行う夜間のシステム停止時間を調整
- 関係部署への周知、業務影響の洗い出し
- 復旧後に必要なデータの差分再入力方法の確認
- 誰がどの範囲を再入力するかの役割分担
といった調整ごとが山のようにあり、スケジュールを組むだけでも一苦労。
結局、夜間帯に復旧作業を実施することになりました。
書いてしまえば数行ですが、実際には一つひとつの確認や合意に時間がかかり、復旧が完了するまでの数日間は通常業務もストップ。
差分データは関係者が手作業で再入力するしかなく、部署の方々に大きな迷惑をかけてしまいました。
待つしかない自分の立場は本当に苦しく、「生きた心地がしない」とはまさにこのこと。
1日、2日と時間が経つたびに胃が締め付けられるようで、体感的には1週間以上に感じられました。
今でもあのときの冷たくなった手足の感覚を、鮮明に覚えています。
消えない失敗が残したもの
20年以上経った今も、あのときの状況をはっきり思い出します。
思い出すたび、胸の奥がざわつく。あの出来事は、時間が経っても言葉になりません。
ただ、あの失敗があったからこそ、今の自分があります。
どんなに慣れた作業でも「慎重すぎるくらいでちょうどいい」と思うようになりました。
あの経験が、自分の中に「安全第一」という感覚をしっかり刻んでくれたのだと思います。
フリーランスになってからは幸い大きな事故はなく、無事に運営できています。
正直、あの出来事を「笑って話せる」ようになるにはまだ時間がかかりそうです。
けれど、そこから学び、誰かの役に立つ形に変えていければ、大切な経験だったと思える気がします。