Linuxで動く財務管理システムfirefly-iii。
Ubuntu 24.04で動くことを確認したので、20.04からのデータを移行しました。(自分の手順では)
環境
移行前
- Ubuntu 20.04
- PHP 8.1
- firefly-iii 5.7.9
移行先
- Ubuntu 20.04
- PHP 8.3
- firefly-iii 6.1.16
その他はApache、MySQL環境です。
さっくりとした(?)手順
- 移行先のfirefly-iiiを構築します。
- 移行前のSQLダンプファイルを取得します。
- 移行先でダンプファイルをインポートします。
- 動作を確認します。
【移行先】firefly-iiiを構築します。
方法はこちらです。
【移行元】DBのダンプファイルを取得します。
- ディレクトリ移動
cd /hoge && pwd
任意のディレクトリを指定します。
- ダンプファイル取得
mysqldump -u firelfy -p --no-tablespaces --single-transaction firefly > firefly_$(date +%Y%m%d).sql
-u DBユーザー
>
の左のfirefly
はDB名です。自分の環境に合わせます。
- パスワードを入力してもファイルが取得できないときは?
パスワードに!
などの特殊文字が入っていると羽の肥えるパターンがあります。passwd
といったファイルを作成し、以下のように記入します。
[mysqldump]
user=DBユーザー
password=''
※パスワードはシングルクォーテーションで囲みます。
こちらのファイルを作った上で、
mysqldump --defaults-extra-file=passwd --no-tablespaces --single-transaction firefly > firefly_$(date +%Y%m%d).sql
実行します。 このpasswdファイルは作業後に削除します。
- ファイル取得確認
head -50 firefly_$(date +%Y%m%d).sql
ダンプファイルの内容が見られることを確認します。
このダンプファイルを任意の安全な方法で移行先にコピーします。
【移行先】DBのインポートを行います。
- ディレクトリ移動
cd /hoge && pwd
ダンプファイルを転送したディレクトリを指定します。
- DBインポート
mysql -h localhost -u firefly -p firefly < firefly_$(date +%Y%m%d).sql
ユーザ名やDB名は自分の環境に合わせます。
- Webサービス(Apache)再起動
sudo systemctl restart apache2.service
- サービス再起動確認
systemctl status apache2.service
active(running)
を確認します。
動作の確認を行います。
移行先のfirefly-iiiをインストールしたドメインにアクセスして
- 移行元のアカウントで認証できること
- 移行元のデータが確認できること
- データの検索や登録ができること
を確認できればOKです。
作業の後処理を行います。
- ディレクトリ移動
cd /hoge && pwd
ダンプファイルを転送したディレクトリを指定します。
- ダンプファイル削除
sudo rm firefly_$(date +%Y%m%d).sql
必要に応じて、移行元サイトの閉鎖を行います。
コメントを残す