The message "The bookmarks and history system will not be functional" almost always means your places.sqlite file is corrupted, not that another program is using it. Here is how to fix it with Firefox's own tools first, then by rebuilding the file manually. No third-party software required.
Understand the Problem
Firefox stores your bookmarks, browsing history, and visit metadata in an SQLite database named places.sqlite. Site icons live in favicons.sqlite. Both files sit inside your Firefox profile folder. When places.sqlite becomes corrupted, bookmarks vanish and history stops saving. The browser may warn: "The bookmarks and history system will not be functional because one of Firefox's files is in use by another application." This error can appear even when no other program is using the file. It signals corruption.
Use Firefox Built-in Tools First
Start with Firefox's own diagnostic and recovery features. They are the safest option and often resolve the issue without touching the storage file directly.
Verify Integrity of the Places File
Open Firefox and go to about:support. This page shows your profile folder location under "Profile Folder" with an "Open Folder" button. Scroll down to the "Places Database" section. Click "Verify Integrity." Firefox runs a check and reports the result. If the file is repairable, Firefox may fix it automatically. If not, you will see a message suggesting further steps.
Restore Bookmarks from Automatic Backups
Firefox automatically saves bookmark backups as .jsonlz4 files in the bookmarkbackups folder inside your profile. To restore from one of these backups:
- Open the Library window by pressing Ctrl+Shift+O (Windows/Linux) or Cmd+Shift+O (Mac).
- Click Import and Backup in the toolbar.
- Choose Restore and select a backup date from the list. Firefox replaces your current bookmarks with the backup.
If no backups are listed, copy a .jsonlz4 file from the bookmarkbackups folder manually. Use the same restore menu and choose "Choose File" after clicking Restore.
Rebuild Places.sqlite from Scratch
If the built-in tools do not work, force Firefox to create a fresh places.sqlite file. This method restores bookmarks from the latest automatic backup. You will lose your browsing history.
- Close Firefox completely. Make sure no Firefox process is running in the background.
- Open your profile folder. Find it quickly from about:support by clicking the "Open Folder" button next to "Profile Folder."
- Locate places.sqlite and rename it to places.sqlite.old. Do not delete it yet.
- Start Firefox. It detects the missing file, creates a new places.sqlite, and automatically restores bookmarks from the most recent backup in the bookmarkbackups folder.
After restarting, check your bookmarks. If they are missing, restore from a different backup using the Library window method described above.
Manual Recovery of the Corrupted File
When Firefox's own recovery fails, you can attempt to repair places.sqlite manually. Close Firefox first. This checkpoints the Write-Ahead Log and puts the file in a consistent state.
Create a Copy of the Corrupted File
Close Firefox. Navigate to your profile folder and copy places.sqlite to a safe location. Work on the copy, not the original.
Use SQLite Command-Line Tools
If you have the SQLite command-line utility installed, recover the file with these steps:
- Open a terminal or command prompt.
- Run sqlite3 places.sqlite to open the file.
- Run .recover to attempt recovery of as much data as possible. This creates a new SQL file with recovered commands.
- Exit SQLite and create a fresh file: sqlite3 recovered.sqlite.
- Run .read output.sql, where output.sql is the file produced by .recover.
- Test the new file by running .tables. Look for expected tables like moz_bookmarks.
If recovery succeeds, replace the original places.sqlite with recovered.sqlite while Firefox is closed, then restart Firefox.
Copy the File Safely
Always close Firefox before copying places.sqlite. This checkpoints the WAL file. Copying while Firefox is open produces an inconsistent snapshot.
What to Do If Recovery Fails
If manual recovery using .recover does not produce a usable file, rely on Firefox's automatic bookmark backups. These .jsonlz4 files are stored separately and are rarely affected by corruption. You can also import bookmarks from an HTML export if you previously created one via the Library window's Import and Backup menu. As a last resort, online services can attempt to extract data from the corrupted file, but the methods above are ones you can perform yourself.
Prevent Future Corruption
No method guarantees complete prevention, but these practices reduce the risk:
- Always close Firefox properly before shutting down your computer.
- Keep Firefox updated to the latest version.
- Export your bookmarks regularly via Library > Import and Backup > Export Bookmarks to HTML.
- Check the Places Database integrity from about:support periodically.