複数の連続した SQLite データベース ダンプ ファイルを 1 つの共通データベースに結合しますか? 目的: Chrome の閲覧履歴全体を検索します

複数の連続した SQLite データベース ダンプ ファイルを 1 つの共通データベースに結合しますか? 目的: Chrome の閲覧履歴全体を検索します

グーグルクロームのデフォルトウェブ閲覧履歴検索エンジン過去100日間の記録にしかアクセスできません。しかし、Chromeはアプリケーションデータに全体SQLite データベース ファイル内の閲覧履歴。ファイル名の命名スキームは「History Index YYYY-MM」です。

私は方法を探しています検索する…

  1. …私の閲覧履歴全体
  2. …と洗練されたフィルター(検索用語を URL、ドメイン、タイトル、本文、ワイルドカードまたは正規表現の用語、日付範囲などの特定のフィールドに制限します)。

… で …

  1. …どちらか既製のソフトウェア
    • 電子歴史用語をフィールドに限定できるため、これに近づきましたが、ワイルドカード/正規表現がなく、デフォルトの検索と同様に時間範囲が制限されています。
    • それ以外では、適切な Chrome 拡張機能やスタンドアロン (Mac) アプリは見つかりませんでした。
  2. …またはコマンドライン複数の SQLite データベース ファイルを 1 つのデータベースに結合し、クエリを実行できるようにします (完全な構文機能を使用)。以下の擬似コードの精神に基づきます。

    • 次のように推奨されます:sqlite --targetDatabase ChromeHistoryAll --importFiles /path/to/ChromeAppData/History\ Index* --importOnlyYetUnknownFiles

    • または、必要な機能 --importOnlyYetUnknownFiles が使用できない場合 (この機能は、「UID をチェックすることで重複したインポートを回避する」とも呼ばれます)、ChromeHistoryAll データベースにまだインポートされていないことがわかっているファイルのみを明示的にインポートします。cd ChromeAppData; sqlite --databaseTarget ChromeHistoryAll --importFiles YetNotImported1 YetNotImported2 YetNotImported3

    • すべてのクエリはデータベース「ChromeHistoryAll」で実行されます



PS: 一般的な関心事に関する追加の質問:複数のファイルからオンザフライで作成された一時データベースでデータベース クエリを実行する方法はありますか?

のように:sqlite --query="SQL query" --targetDatabase DbAll --DBtemporaryInRAM --importFiles db1 db2 db3

これらの履歴インデックス ファイルの合計ファイル サイズは 500 MB なので、これは確かに私の Chrome の質問には当てはまりません。そのため、このようなクエリはパフォーマンスが低下します。ただし、他の状況では役立つ可能性があります。

関連情報