Как очистить файлы базы данных SQLite хранилища Firefox, чтобы удалить большие файлы SQLITE-WAL?

Я заметил, что файлы WAL (журнал упреждающей записи), (*.sqlite-wal), связанные с базами данных SQLite (*.sqlite), используемыми веб-браузером Firefox, часто становятся довольно большими. Они буквально могут в 150 раз превышать размер связанных с ними баз данных SQLite и сохранять этот размер в течение месяцев (годов? навсегда?).

Согласно этому ответу StackOverflow , возможным решением может быть запуск следующей команды прагмы SQLite в каждой затронутой базе данных хранилища:

      PRAGMA schema.wal_checkpoint(TRUNCATE);

Теоретически для выполнения этого действия можно использовать внешний по отношению к Firefox инструмент SQLite, но я узнал, что выполнение действий в Firefox обычно дает наилучшие результаты. (Например, попробуйте поработать с omni.jarза пределами Firefox... это может быть PITA, потому что Mozilla использует нетипичную структуру JAR.)

Есть ли в Firefox способ очистить все базы данных хранения SQLite, чтобы их содержимое полностью записывалось в соответствующий.sqliteфайлы?


ОБНОВЛЯТЬ:

Я хотел бы отметить, что одна из основных целей публикации этого вопроса — безопасно справиться сstorage-sync-v2.sqlite-walфайл, который увеличивается до тех пор, пока не достигнет 32 МБ в каждом профиле Firefox. Соответствующая база данных,storage-sync-v2.sqlite, также имеетstorage-sync-v2.shmфайл, но имеет тенденцию оставаться довольно небольшим. Чтобы сосредоточить внимание на одной теме в каждом вопросе , я написал связанный вопрос, специально предназначенный для достижения этой цели .

0 ответов

Другие вопросы по тегам