データベースを吹っ飛ばしてしまった話

スポンサーリンク

どうも(´・ω・`)
何度かこのブログを訪れてくれてる方はわかると思いますが記事がほとんど消えてしまっています
これはその話

先日、サーバーのOSをアップグレードしました
それに伴っていくつかのパッケージを整理していたのですが、その際に誤ってmariadbを削除してしまったんですね
それで入れ直したはいいものの以前入れていたmariadbが /var/lib/mysql-10.2 にディレクトリを置いてまして、入れ直したmariadbは一般的な /var/lib/mysql になっていてまず困りました。この時点で私はMySQLのInnoDBでこのディレクトリの下にあるものを全てバックアップしなければならないことに気づいていませんでして……
まぁmysqlやperfomance_schemeを消してしまってたんですね……
それからそのディレクトリのデータベースファイルをバックアップして、extundeleteなるものを発見して意気揚々とリストアしたら /var/lib/mysql-10.2 のなかにmysqlなんてディレクトリはなく……
lost+found ディレクトリにはその中身らしきファイルはいくつか見つかったんですがまあそれを元に戻すなんていう気力があるわけもなく今に至るという感じです

というわけでこのブログへ外からアクセスが来る主な記事をGoogle検索のキャッシュにお力添えをしていただき(ほんとすごいなこのキャッシュ……)なんとか復旧できたという感じです

今回学んだ教訓

  • OS の更新をするときはバックアップしないでやるなんていうアホなことはしない
  • データベースは定期的にバックアップしておく
  • もしバックアップしてなくても安易にディレクトリを削除しない

正直、自分が開発した短縮URLや気象庁のXML電文の蓄積を失ったというのは結構きつい……

まだ名残惜しくibdファイルを残してますが、もしうまいこといけば過去の記事やデータを全て元に戻せる可能性があるのでどうにかやるだけやってみようかなぁという感じです
stringsコマンドがUTF8の文字を出してくれないのでめんどくさそうではあります

という自戒の意味も込めた記事でした。現在復旧させている記事以外は正直復旧する価値を感じてないのでしばらくこのままかなぁという感じ
NowPlayingTweetの開発記録なんかもうやる気ないところへデータ全て吹っ飛ぶって感じですからもうやりません(´・ω・`)
まぁ自作したProductなんで紹介記事ぐらいは書きます

それと開発停止しているNicoDownloader、ニコニコのプレミアム解約したのもあってモチベが全くなかったんですが、NowPlayingTweet作ってる時にこれのUIが気にくわないというかソースから修正したい気分にはなったので近いうちに新しいバージョンでも出して記事書こうかなと。あとその記事が他所のサイトからリンクされてるのを思い出したので復旧させなければなぁと

私のProductはここにリンクがありますので興味がある方はのぞいてやってください
基本MacアプリとWebかコマンドラインのアプリしか作ってませんが、機会があればWindowsアプリケーションの開発もやってみたいなぁ

それでは

Uncategorize / Blog
kPherox

普段は艦これとかデレステとか遊んでます。Twitterアカウントの年齢制限に引っかかって@kPheroxはロック中です(´・ω・`)

触ったことのある言語: Java, Scala, Node.js/JavaScript, CoffeeScript, PHP, Python, Swift, C#

利用経験のあるフレームワーク: Laravel(PHP), Play Framework(Scala), Cocoa(Swift), Perfect(Swift)

kPheroxをフォローする
kPherox Blog

コメント