wvxwxvw:
Решил объединить все сведения об Sqlite3 и батнике для очистки профиля, в одном посте.
Sqlite3 - утилита в данном случае используется для оптимизации и сжатия баз данных sqlite, находящихся в профиле Firefox. Запуск оптимизации реализован через батник, о котором ниже. Этот же метод оптимизации sqlite используется в SpeedyFox и эффект у них идентичен. Например places.sqlite стабильно жмется с > 10 Мб до < 2, что вроде как должно сокращать время доступа к нему при запуске Firefox. Но помимо этого, самого крупного places.sqlite, есть еще и другие sqlite в том числе принадлежащие расширениям. Например sqlite simplemail может быть намного больше places.sqlite и жаться немного сильнее. И это при каждодневной оптимизации, если же оптимизацию делать вообще первый раз или после длительного перерыва, результаты могут быть еще более значимыми.
Официальная страница утилиты.
Батник и способ первоначально был выложен dev2null здесь, кое что взято из сборки Firefox MO от southron4965, кое что найдено мной, все комментарии тоже мои. Другие варианты батника можно найти в предыдущих постах.
Прилагаемый ниже батник, помимо запуска Sqlite3, очищает профиль и сам браузер от лишних и мусорных файлов. Очистка не затрагивает историю, последнюю сессию, пароли и закладки. Снабжен внутренними комментариями, благодаря чему его легко редактировать или использовать как справочник. Батник точно не предназначен для использования на версиях FF ниже 45.2 esr и 47.1 так как в нем есть записи удаляющие предположительно нужные для предыдущих версий файлы. Полностью готов для использования в сборках на основе tmemutil от Fossyara и сборке от PortableApps, может работать и на других сборках или оригинальной версии, но потребуется редактирование путей. Тестировался на сборках 45.2-3 esr от Fossyara и сборках 47.1-48.0 от PortablreApps.
Для использования следует поместить сам батник и sqlite3.exe в папку профиля и там запустить при закрытом браузере. При запущенном FF батник просто не начнет работать, будет висеть сообщение о необходимости закрытия браузера. Возможно реализовать автоматический запуск батника при закрытии браузера, для этого можно использовать расширение Click&Clean или любой другой известный вам способ.
Батник делал для себя и у меня он давно и без проблем работает, но случаи бывают разные, потому перед первым использованием не забудьте сделать бэкап профиля.
[more=Сам батник:]
Код:
[/more]
Готовый комплект sqlite3.v1.13+bat(160824).7z
Решил объединить все сведения об Sqlite3 и батнике для очистки профиля, в одном посте.
Sqlite3 - утилита в данном случае используется для оптимизации и сжатия баз данных sqlite, находящихся в профиле Firefox. Запуск оптимизации реализован через батник, о котором ниже. Этот же метод оптимизации sqlite используется в SpeedyFox и эффект у них идентичен. Например places.sqlite стабильно жмется с > 10 Мб до < 2, что вроде как должно сокращать время доступа к нему при запуске Firefox. Но помимо этого, самого крупного places.sqlite, есть еще и другие sqlite в том числе принадлежащие расширениям. Например sqlite simplemail может быть намного больше places.sqlite и жаться немного сильнее. И это при каждодневной оптимизации, если же оптимизацию делать вообще первый раз или после длительного перерыва, результаты могут быть еще более значимыми.
Официальная страница утилиты.
Батник и способ первоначально был выложен dev2null здесь, кое что взято из сборки Firefox MO от southron4965, кое что найдено мной, все комментарии тоже мои. Другие варианты батника можно найти в предыдущих постах.
Прилагаемый ниже батник, помимо запуска Sqlite3, очищает профиль и сам браузер от лишних и мусорных файлов. Очистка не затрагивает историю, последнюю сессию, пароли и закладки. Снабжен внутренними комментариями, благодаря чему его легко редактировать или использовать как справочник. Батник точно не предназначен для использования на версиях FF ниже 45.2 esr и 47.1 так как в нем есть записи удаляющие предположительно нужные для предыдущих версий файлы. Полностью готов для использования в сборках на основе tmemutil от Fossyara и сборке от PortableApps, может работать и на других сборках или оригинальной версии, но потребуется редактирование путей. Тестировался на сборках 45.2-3 esr от Fossyara и сборках 47.1-48.0 от PortablreApps.
Для использования следует поместить сам батник и sqlite3.exe в папку профиля и там запустить при закрытом браузере. При запущенном FF батник просто не начнет работать, будет висеть сообщение о необходимости закрытия браузера. Возможно реализовать автоматический запуск батника при закрытии браузера, для этого можно использовать расширение Click&Clean или любой другой известный вам способ.
Батник делал для себя и у меня он давно и без проблем работает, но случаи бывают разные, потому перед первым использованием не забудьте сделать бэкап профиля.
[more=Сам батник:]
Код:
@echo off %~d0 cd "%~dp0" title Оптимизация/сжатие баз данных Portable Firefox :try cls tasklist | find /i "firefox.exe" >nul if not errorlevel 1 (echo. && echo. && echo. && echo Вы должны закрыть Firefox для выполнения оптимизации^! && >nul ping -n 2 127.0.0.1 && goto try) echo. echo. echo. echo Пожалуйста подождите, идет оптимизация ... for %%i in (*.sqlite) do @echo VACUUM; | sqlite3 %%i :: Для сжатия .sqlite`s в подпапках, перечисляем их в верхней строке, в скобках ( ) через пробел, следующая строка как пример :: for %%i in (simplemail\*.sqlite *.sqlite) do @echo VACUUM; | sqlite3 %%i :: Двойное двоеточие закомментирует строку :: Некоторые строки уже закомментированы :: Двойная точка, в начали пути к файлу, заставит искать файл в каталоге на уровень выше текущего :: Пути с пробелами заключаются в кавычки :: Пробелов в конце строк быть не должно :: /f Принудительное удаление "read only" файлов :: /q Отключение подтверждения при удалении :: /s Удаление папки вместе с содержимым :: Файлы дистрибутива if exist ..\browser\crashreporter-override.ini del /f /q ..\browser\crashreporter-override.ini if exist ..\crashreporter.exe del /q ..\crashreporter.exe if exist ..\crashreporter.ini del /f /q ..\crashreporter.ini if exist ..\install.log del /f /q ..\install.log if exist ..\maintenanceservice.exe del /q ..\maintenanceservice.exe if exist ..\maintenanceservice_installer.exe del /q ..\maintenanceservice_installer.exe if exist ..\webapp-uninstaller.exe del /q ..\webapp-uninstaller.exe if exist ..\uninstall rmdir /s /q ..\uninstall :: Предустановленные словари, если есть свои то эти не нужны :: if exist ..\dictionaries rmdir /s /q ..\dictionaries :: Файлы дистрибутива Apps if exist ..\..\App\Firefox\browser\crashreporter-override.ini del /f /q ..\..\App\Firefox\browser\crashreporter-override.ini if exist ..\..\App\Firefox\crashreporter.exe del /q ..\..\App\Firefox\crashreporter.exe if exist ..\..\App\Firefox\crashreporter.ini del /f /q ..\..\App\Firefox\crashreporter.ini if exist ..\..\App\Firefox\maintenanceservice.exe del /q ..\.\App\Firefox\maintenanceservice.exe if exist ..\..\App\Firefox\maintenanceservice_installer.exe del /q ..\..\App\Firefox\maintenanceservice_installer.exe if exist ..\..\App\Firefox\uninstall rmdir /s /q ..\..\App\Firefox\uninstall if exist ..\..\App\Firefox64\browser\crashreporter-override.ini del /f /q ..\..\App\Firefox64\browser\crashreporter-override.ini if exist ..\..\App\Firefox64\crashreporter.exe del /q ..\..\App\Firefox64\crashreporter.exe if exist ..\..\App\Firefox64\crashreporter.ini del /f /q ..\..\App\Firefox64\crashreporter.ini if exist ..\..\App\Firefox64\maintenanceservice.exe del /q ..\..\App\Firefox64\maintenanceservice.exe if exist ..\..\App\Firefox64\maintenanceservice_installer.exe del /q ..\..\App\Firefox64\maintenanceservice_installer.exe if exist ..\..\App\Firefox64\uninstall rmdir /s /q ..\..\App\Firefox64\uninstall :: Предустановленные словари, если есть свои то эти не нужны :: if exist ..\..\App\Firefox\dictionaries rmdir /s /q ..\..\App\Firefox\dictionaries :: if exist ..\..\App\Firefox64\dictionaries rmdir /s /q ..\..\App\Firefox64\dictionaries :: Мусор плагинов и расширений if exist ..\browser\plugins\sumatrapdfcache rmdir /s /q ..\browser\plugins\sumatrapdfcache if exist adblockplus\*.tmp del /f /q adblockplus\*.tmp if exist adblockplus\*backup*.ini del /f /q adblockplus\*backup*.ini if exist adblockplus\patterns-*.ini del /f /q adblockplus\patterns-*.ini if exist AppData\Adobe rmdir /s /q AppData\Adobe if exist AppData\Macromedia rmdir /s /q AppData\Macromedia if exist AppData\Microsoft rmdir /s /q AppData\Microsoft :: if exist autoproxy\*backup*.ini del /f /q autoproxy\*backup*.ini if exist custombuttons\backup\buttonsoverlay.xul*.bak del /f /q custombuttons\backup\buttonsoverlay.xul*.bak if exist custombuttons\backup\buttonsoverlay.xul*.sbk del /f /q custombuttons\backup\buttonsoverlay.xul*.sbk if exist flashgot.lo* del /f /q flashgot.lo* if exist LocalAppData\Adobe rmdir /s /q LocalAppData\Adobe if exist LocalAppData\Macromedia rmdir /s /q LocalAppData\Macromedia if exist LocalAppData\Microsoft rmdir /s /q LocalAppData\Microsoft if exist UnMHT rmdir /s /q UnMHT :: Мусор профиля if exist "AppData\Mozilla\Firefox\Crash Reports" rmdir /s /q "AppData\Mozilla\Firefox\Crash Reports" if exist Cache rmdir /s /q Cache if exist Cache2 rmdir /s /q Cache2 if exist crashes rmdir /s /q crashes if exist datareporting rmdir /s /q datareporting if exist enumerate_devices.txt del /f /q enumerate_devices.txt if exist frequencyCap.json del /f /q frequencyCap.json if exist healthreport rmdir /s /q healthreport if exist healthreport.sqlite del /f /q healthreport.sqlite if exist indexedDB rmdir /s /q indexedDB if exist LocalAppData\Temp rmdir /s /q LocalAppData\Temp if exist marionette.log del /f /q marionette.log if exist mozilla-media-cache rmdir /s /q mozilla-media-cache if exist netpredictions.sqlite del /f /q netpredictions.sqlite if exist reading-list.sqlite del /f /q reading-list.sqlite if exist revocations.txt del /f /q revocations.txt if exist safebrowsing rmdir /s /q safebrowsing if exist saved-telemetry-pings rmdir /s /q saved-telemetry-pings if exist seer.sqlite del /f /q seer.sqlite if exist SiteSecurityServiceState.txt del /f /q SiteSecurityServiceState.txt if exist startupCache rmdir /s /q startupCache if exist storage rmdir /s /q storage if exist Telemetry.FailedProfileLocks.txt del /f /q Telemetry.FailedProfileLocks.txt if exist Telemetry.ShutdownTime.txt del /f /q Telemetry.ShutdownTime.txt if exist TestPilotErrorLog.log del /f /q TestPilotErrorLog.log if exist thumbnails\*.png del /f /s /q thumbnails\*.png if exist times.json del /f /q times.json if exist weave\logs\error-sync*.txt del /f /q weave\logs\error-sync*.txt :: Вроде история RSS-ленты if exist webapps rmdir /s /q webapps if exist webappsstore.sqlite del /f /q webappsstore.sqlite if exist webappsstore.sqlite-* del /f /q webappsstore.sqlite-* :: Для установочных и PortableApps версий if exist "%AppData%\Mozilla\Firefox\Crash Reports\" rmdir /s /q "%AppData%\Mozilla\Firefox\Crash Reports\" :: Ежедневные копии закладок if exist bookmarkbackups\* del /f /q bookmarkbackups\* :: Хранит версию и пути Firefox :: if exist compatibility.ini del /f /q compatibility.ini :: Настройки масштаба сайтов :: if exist content-prefs.sqlite del /f /q content-prefs.sqlite :: История заполнения веб-форм, в том числе и строки поиска :: if exist formhistory.sqlite del /f /q formhistory.sqlite :: Неверные или не в той кодировке параметры из файла prefs.js :: if exist Invalidprefs.js del /f /q Invalidprefs.js :: Старые about:config, создаются при обновлении версии :: if exist prefs-*.js del /f /q prefs-*.js :: Сохраненные сессии текущая и старые :: if exist sessionstore.js del /f /q sessionstore.js if exist sessionstore-backups rmdir /s /q sessionstore-backups :: Обои рабочего стола установленные через FF if exist desktop/*.jpg del /f /q desktop/*.jpg if exist desktop/*.jpeg del /f /q desktop/*.jpeg if exist desktop/*.png del /f /q desktop/*.png :: OfflineCache if exist OfflineCache rmdir /s /q OfflineCache :: Можно вообще заменить файлом "read only" без расширения, что бы ни чего не писалось if exist minidumps rmdir /s /q minidumps :: Иконки для списка истории if exist jumpListCache rmdir /s /q jumpListCache :: В этой секции новые пункты, кроме тех что прокомментированы отдельно if exist directoryLinks.json del /f /q directoryLinks.json if exist localstore.rdf del /f /q localstore.rdf :: Отсутствуют и в Apps и в Tmem выше 45.2, возможно артефакты if exist addons.sqlite del /f /q addons.sqlite if exist bookmarks-*.html del /f /q bookmarks-*.html if exist bookmarks-*.json del /f /q bookmarks-*.json if exist cshelper.cfg del /f /q cshelper.cfg if exist dh-conv-rules.rdf del /f /q dh-conv-rules.rdf if exist dh-media-lists.rdf del /f /q dh-media-lists.rdf if exist dh-smart-names.rdf del /f /q dh-smart-names.rdf if exist downloads.json del /f /q downloads.json if exist downloads.sqlite del /f /q downloads.sqlite if exist extensions.log del /f /q extensions.log if exist extensions.sqlite del /f /q extensions.sqlite if exist foxydeal.json del /f /q foxydeal.json if exist foxydeal.sqlite del /f /q foxydeal.sqlite if exist localstore-safe.rdf del /f /q localstore-safe.rdf if exist metro rmdir /s /q metro if exist search-metadata.json del /f /q search-metadata.json if exist search.json del /f /q search.json if exist search.json.tmp del /f /q search.json.tmp if exist search.rdf del /f /q search.rdf if exist searchplugins rmdir /s /q searchplugins if exist sessionbackups rmdir /s /q sessionbackups if exist sessionstore.bak-* del /f /q sessionstore.bak-* if exist sessionstore.js.tmp del /f /q sessionstore.js.tmp if exist shortcutCache rmdir /s /q shortcutCache if exist thumbnails-old rmdir /s /q thumbnails-old if exist websearches.sqlite rmdir /s /q websearches.sqlite :: Дальнейшие строки просто для информации :: blocklist.xml - список заблокированных дополнений :: cert_override.txt - user-исключения сертификатов :: cert8.db - сертификаты безопасности :: content-prefs.sqlite - индивидуальные настройки страниц :: cookies.sqlite - куки :: extensions.ini - список расширений и тем :: key3.db - ключ шифрования паролей :: logins.json - сохраненные пароли :: mimeTypes.rdf - типы файлов "открыть-сохранить" :: parent.lock - создается в активном профиле :: permissions.sqlite - разрешения для сайтов :: persdict.dat - слова, добавленные вами в словарь :: places.sqlite - закладки и журнал посещений :: pref.js - about:config :: search.json.mozlz4 - поисковые системы :: secmod.db - база данных модулей защиты :: signons.sqlite - сайты с "не сохранять пароль" :: user.js - значения переписываемые в "pref.js" при запуске, изменить может только пользователь :: webappsstore.sqlite - хранилище DOM, для веб-сайтов :: xulstore.json - настройки панелей, окон :: Изредка обновляемая страница о файлах и папках FF :: https://mozilla-russia.org/products/firefox/profiles.html :: Содержит ошибки :: Системные пути, на случай применения в установочной версии и некоторых сборках :: rmdir /s /q "%Temp%" :: rmdir /s /q "%LocalAppData%\Temp" |
Готовый комплект sqlite3.v1.13+bat(160824).7z