SQLite のコマンドを使ってデータベースのダンプとインポートを実行する bash スクリプト。
VIENNA_DIR="${HOME}/Library/Application Support/Vienna"
DBFILE="messages.db"
DBFILE_BACKUP="messages.db.bak"
DUMPFILE="dump.gz"
cd ${VIENNA_DIR}
rm -f ${DBFILE_BACKUP} ${DUMPFILE}
# dump
sqlite3 ${DBFILE} ".dump" |gzip -c > ${DUMPFILE}
# backup
mv ${DBFILE} ${DBFILE_BACKUP}
# import
gunzip -c ${DUMPFILE} | sqlite3 ${DBFILE}データベースファイルのバックアップファイル messages.db.bak は残したままにしておく。
データベースが再構成されることでアプリケーションの起動や表示速度が多少改善される。再構成するタイミングはダウンロード済みのデータ(フィードアイテム)を大量に削除した時や、定期的にアイテムを削除しているのなら1ヶ月に1度くらい実行しても良いだろう。