Konteks:
Saya telah menggunakan profil Firefox saya selama beberapa tahun sekarang. File riwayat saya menjadi besar, secara alami. Saya mengatur Firefox Sync antara PC desktop utama dan laptop saya.
Konfigurasi HW:
- PC: i5-3450, RAM DDR3 8 GB, SSD M4 128 GB Krusial
- laptop: Pentium SU4100, RAM DDR3 4 GB, WD 5400 rpm HDD
Mengakses entri histori saat mengetik di Awesome Bar di desktop saya membutuhkan waktu yang cukup lama meskipun konfigurasi yang layak, laptop bahkan lebih lambat. Pengalamannya sangat tidak responsif.
Saya pikir jika saya sedikit membersihkan sejarah, saya mungkin menghindari membuat profil baru untuk mempercepat.
Pertanyaannya sendiri:
Menggambarkan:
Apakah ada cara untuk menghapus semua entri riwayat yang telah dikunjungi kurang dari x (misalkan 5) kali dan pada saat yang sama kunjungan baru-baru ini kurang dari y (katakanlah 120) hari?
afaik file sejarah adalah semacam database SQL, tapi saya tidak begitu yakin bagaimana data disimpan, jika ada "cara aman" untuk mengeditnya dan seperti apa query untuk melakukan apa yang saya perlukan akan terlihat.
Saya terus menelusuri pertanyaan SuperUser sebelumnya untuk melihat apakah saya dapat menemukan informasi yang relevan.
Di direktori profil Firefox saya, ada file bernama
places.sqlite
. Membuka dengan sqlite mengungkapkan (antara lain) tabelmoz_places
danmoz_historyvisits
. Tampaknyamoz_historyvisits
menggunakan utamamoz_places
untuk merujuk ke URL.
Karena saya tidak terbiasa dengan database, saya tidak benar-benar mengerti bagaimana dua tabel yang disebutkan dalam kutipan berhubungan.
tangkapan layar bagian dari tabel
Saya perhatikan visit_count
ini dalam format standar, membuatnya mudah untuk dikerjakan. The last_visit_date
terlihat dienkripsi untuk mata telanjang saya, tapi saya tidak bisa melihat di mana cara.
Semoga itu bisa membantu, aku sudah kehabisan akal.
sumber
Jawaban:
Dengan beberapa penelitian (lihat di akhir untuk 'referensi'), saya telah datang dengan solusi sederhana (semacam) ini:
CADANGAN PERTAMA TUTUP FIREFOX PERTAMA
Ini mengharuskan Anda untuk mengedit Database SQLite (database SQL mandiri; lihat artikel Wikipedia ) dari Mozilla Firefox dengan membuat kueri untuk menemukan semua catatan yang memenuhi syarat (dalam kasus Anda - dilihat kurang dari 5 kali dan tidak dikunjungi di 120 hari terakhir).
CADANGAN PERTAMA TUTUP FIREFOX PERTAMA
Instruksi mulai:
Ini berfungsi (diuji dan bekerja dengan Firefox v. 29.0.1 saya). Dalam 12 langkah mudah (ish):
Instal SQLite Database Browser
Buka
Klik Buka Basis Data
Arahkan ke
C:\Users\[USER]\AppData\Roaming\Mozilla\Firefox\Profiles\[PROFILE]
pengeditan sesuai kebutuhanMEMBUAT FILE PERTAMA BERIKUT INI !!
Buka
places.sqlite
dari direktori yang Anda buka pada langkah 4.SERIUS, CADANGAN PERTAMA !!
Klik tab Jalankan SQL.
Masukkan ini:
Ganti
x(2)
ke 5 (dalam contoh Anda)Ganti
2014-04-01
dan2014-05-30
dengan rentang tanggal yang Anda inginkanTekan tombol putar biru.
Periksa apakah situs yang ditampilkan sudah benar (seharusnya, tetapi periksa!)
Jika ya, ganti kedua baris pertama dari kode di atas dengan:
jadi kode Anda terlihat seperti:
DIBUAT! Tutup program dan klik simpan saat menutup.
Instruksi berakhir
Bagaimana dengan
last_visit_date
?Saya tidak akan menyebutnya 'terenkripsi' (walaupun saya tidak setuju bahwa itu terlihat terenkripsi). Itu hanya di 'sistem' lain. Tanggal dalam
Unix
sistem waktu (atauEpoch
/POSIX
). Ini adalah jumlah detik yang telah berlalu sejak 00:00:00 (UTC) 1 Januari 1970. 1 jam adalah 3600 detik. 1 tahun adalah 31556926 hari.Untuk info lebih lanjut. periksa artikel Wikipedia ini, atau situs web ini yang mengubah waktu ke dan dari zaman dahulu.
Screenshot (abaikan query SQL pada gambar-gambar ini, mereka salah. Ini untuk memberitahu Anda sebagian besar ke mana harus mencari)
Terimakasih untuk ;):
sumber
moz_places
setiap entri yang tidak lagi memiliki yang sesuaiplace_id
.moz_historyvisits
place_id
dimoz_historyvisits
=id
dimoz_places
?moz_historyvists
first (delete from moz_historyvisits as hv left join moz_places as p on hv.place_id = p.id where p.visit_count...
) atau 2. setelah clearingmoz_places
, Anda dapat menghapus darimoz_historyvisits
semua entri yang tidak memiliki entri yang sesuai . Saya lebih suka opsi 1 secara pribadi. Jangan menggunakannya tanpa pengujian; SQL saya agak berkarat, dan saya belajar dengan pgsql, bukan sqlite. Anda mungkin benar-benar dapat menghapus dari keduanya sekaligus, biar uji.