Tag: SQLite

目次

関連ページ

参考情報

アドバンス

データベースが変更されたどうかを確認

  • データベースファイルの24〜27バイトにfile change counterというのが格納されている。Checksum for a SQLite database? - Stack Overflowによると以下のコマンドで表示することができる。
  • これをsqlite3_file_change_counter.shとして保存。sqlite3_file_change_counter.sh dbfilename で実行。
    #!/bin/sh
    # linuxの場合
    #od --skip-bytes 24 --read-bytes=4 -tx1  $1 | sed -n '1s/[^[:space:]]*[[:space:]]//p' | tr -d ' '
    
    # macの場合
    od -j 24 -N 4 -tx1 $1 | sed -n '1s/[^[:space:]]*[[:space:]]//p' | tr -d ' '
    

PRAGMA設定を表示する

トラブルシューティング

マルチプロセスの書き込み、読み込みってどうなってる?

  • マルチプロセス/マルチスレッドに対応しているはず…
  • しかし種々の管理ツールでsqliteファイルを開いておき、その間Railsのdb:seedでデータを変更すると検知されないことが多い。特にdb:seedでデータを増やしたあと、db:resetしても過去データが読み込まれてしまう。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-06-06 (月) 16:31:01 (1018d)