Bisakah ada cache_ * dikosongkan dengan aman?


14

Terkadang saat memindahkan database, ukurannya bisa terlalu besar. Bisakah tabel awalan "cache_" dikosongkan tanpa menyebabkan masalah?


2
Saya belum menemukan masalah sejauh ini, dengan memotong tabel ini.
GoodSp33d

Jawaban:


14

Dengan satu pengecualian, ya. Pengecualian itu adalah cache_form. Itu sebenarnya bukan tabel cache tetapi berisi informasi $ form_state sementara dari formulir yang saat ini ditampilkan di situs Anda. Menghapus tabel itu akan membatalkan formulir ini dan ketika pengguna kemudian mencoba mengirimkan formulir itu, ia akan mendapatkan pesan kesalahan dan harus mengisi formulir itu lagi.

Catat itu drush sql-dumpdan Cadangkan dan Pindahkan secara otomatis tinggalkan konten dari ini dan tabel lainnya ketika membuat dump database dengan ini bukan mysqldump atau phpmyadmin.


sql-dump drush sebenarnya termasuk tabel 'cache_form'.
nikmati

@remote: Saya tidak bermaksud mengatakan sebaliknya (walaupun saya tidak tahu bahwa itu secara eksplisit membuat cache_form). Jangan ragu untuk mengedit (atau menyarankan suntingan) jika Anda pikir jawaban saya menyesatkan.
Berdir

4

Ada "teman palsu" dalam daftar itu. cache_form bukan tabel cache, dan mengosongkannya akan membatalkan semua bentuk yang aktif di situs pada saat itu.

Saya juga tidak melihat alasan mengapa Anda akan menggunakan phpmyadmin untuk ini. Itu kikuk dan rawan kesalahan. "drush cc all" adalah teman Anda :)


3

Tujuan dari tabel cache adalah menjaga nilai yang dihitung. Ketika sebuah modul memanggil cache_get () , dan ia mengembalikan nilai kosong, maka ia hanya mengeksekusi kode untuk mendapatkan kembali nilai yang di-cache.
Semua modul yang saya tahu secara otomatis menjalankan kode untuk mendapatkan nilai yang mereka harapkan dalam cache, jika cache kosong; mengosongkan cache tidak menyebabkan masalah pada modul yang menggunakannya.


3

Saya telah melakukannya berkali-kali dan tidak menemukan masalah dengan melakukannya.

Pemberitahuan penting - coba hapus semua tabel cache sekaligus. Ini akan mencegah Drupal menggunakan data cache yang tidak valid.


Saya memiliki data yang sangat penting dalam tabel ini, apakah Anda 120% yakin? ;)
Mohammad Ali Akbari

Ya, Tapi untuk data Anda yang sangat penting, harap ambil cadangan dulu. :)
j2r

2
@MohammadAliAkbari Jika Anda memiliki data penting maka itu harus benar-benar disimpan di tempat lain dan juga tabel cache ...
Chapabu

@ j2r, Aku juga, aku sudah melakukannya beberapa kali. Tidak masalah. +1
Sithu

@ Chapabu Maksud saya situs ini penting, saya tidak menyimpan data penting apa pun sendiri
Mohammad Ali Akbari
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.