【サーバ】Subsonicのデータを外部データベースに持つように設定

昔から愛用しているストリーミングサーバのSubsonic

不意にサーバーが落ちたときにたまにデータが壊れることがあったので外部データベースにデータを持つようにしてみた。

とはいえ、結局は同じローカルでの話になるので壊れるときはどっちにしても壊れるかもしれない。

個人的には定期的にデータフォルダを固めておくよりもデータベースの方がバックアップしやすいと思ったので移行することに。

Subsonic のデータを MariaDB に持つようにするための設定

特に難しいことは無く、公式にある説明の通り。

前提として MariaDB は既にインストールされているものとして Subsonic も動いているものとします。

Subsonic が起動している場合は終了させておきましょう。

作業の流れ

  • 「subsonic」という名前で空のデータベースを作成。
  • 「/etc/default/subsonic」のファイルに起動時のパラメータを記入

これで完了です。

追加するパラメータはこちら

jdbc:mysql://localhost:3306/subsonic?user=root&password=hogehoge&characterEncoding=UTF-8

青い部分はデータベースの環境によって適宜変更すること。

最終的な/etc/default/subsonic」は

1SUBSONIC_ARGS="--max-memory=512 --db=jdbc:mysql://localhost:3306/subsonic?user=root&password=hogehoge&characterEncoding=UTF-8"

こんな形になるはず。メモリの部分は個人差あると思いますが。

あとはいつもどおり Subsonic を起動させるとデータベース内に自動でテーブルが作成される。

当然ながらデータベースに切り替えると今までの設定などは無くなるので注意。
(起動オプション消せば前の状態には戻るとは思うけど未確認)

さて、これがメリットあるのかどうかは今後判断することになりそうだけど定期的にバックアップは取っておこうかな。

とりとめのないまとめ

今回、Subsonic のデータ壊れてしまって今まで作っていたプレイリストが無くなってしまいました・・・。

コツコツと作っていたのに非常に残念。

しかし・・こんな事にでもならないとこういった部分に手を入れることが中々出来ないので結果的に良かった・・・はずw