Bất kỳ bộ nhớ cache_ * nào có thể được dọn sạch một cách an toàn không?


15

Đôi khi khi di chuyển cơ sở dữ liệu nó có thể quá lớn. Có thể xóa bất kỳ bảng tiền tố "cache_" nào mà không gây ra sự cố không?


2
Tôi đã không gặp phải bất kỳ vấn đề cho đến nay, bằng cách cắt các bảng này.
GoodSp33d

Câu trả lời:


15

Với một ngoại lệ, có. Ngoại lệ đó là cache_form. Đó thực sự không phải là bảng bộ đệm nhưng chứa thông tin tạm thời $ form_state của các biểu mẫu hiện được hiển thị trên trang web của bạn. Xóa bảng đó sẽ làm mất hiệu lực các biểu mẫu này và khi người dùng sau đó cố gắng gửi biểu mẫu đó, anh ta sẽ nhận được thông báo lỗi và phải điền lại biểu mẫu đó.

Lưu ý rằng drush sql-dumpSao lưu và Di chuyển tự động bỏ qua nội dung của các bảng này và các bảng khác khi tạo kết xuất cơ sở dữ liệu với các thay vì mysqldump hoặc phpmyadmin.


drush sql-dump thực sự bao gồm bảng 'cache_form'.
vui mừng

@remote: Tôi không có ý ám chỉ khác (mặc dù tôi không biết rằng nó rõ ràng giữ cache_form). Vui lòng chỉnh sửa (hoặc đề nghị chỉnh sửa) nếu bạn nghĩ rằng câu trả lời của tôi là sai lệch.
Berdir

5

Có một "người bạn giả" trong danh sách đó. cache_form không phải là bảng bộ đệm và làm trống nó sẽ làm mất hiệu lực tất cả các biểu mẫu hoạt động trên trang web tại thời điểm đó.

Tôi cũng không thấy lý do tại sao bạn sẽ sử dụng phpmyadmin cho việc này. Đó là clunky và dễ bị lỗi. "drush cc all" là bạn của bạn :)


4

Mục đích của các bảng bộ đệm là giữ các giá trị được tính toán. Khi một mô-đun gọi cache_get () và nó nhận lại một giá trị trống, thì nó chỉ thực thi mã để lấy lại các giá trị được lưu.
Tất cả các mô-đun tôi biết sẽ tự động thực thi mã để nhận giá trị mà chúng mong đợi trong bộ đệm, nếu bộ đệm trống; làm trống bộ đệm không gây ra bất kỳ vấn đề nào cho các mô-đun sử dụng nó.


4

Tôi đã làm điều đó nhiều lần và không tìm thấy bất kỳ vấn đề nào bằng cách thực hiện nó.

Thông báo quan trọng - cố gắng xóa tất cả các bảng bộ đệm cùng một lúc. Điều này sẽ ngăn Drupal sử dụng dữ liệu bộ đệm không hợp lệ.


Tôi có dữ liệu rất quan trọng trong các bảng này, bạn có chắc chắn 120% không? ;)
Mohammad Ali Akbari

Có, nhưng đối với dữ liệu rất quan trọng của bạn, vui lòng sao lưu trước. :)
j2r

2
@MohammadAliAkbari Nếu bạn có dữ liệu quan trọng thì nó thực sự nên được lưu trữ ở một nơi khác cũng như các bảng bộ đệm ...
Chapabu

@ j2r, tôi cũng vậy, tôi đã làm điều đó nhiều lần. Không vấn đề gì. +1
Sithu

@Chapabu Ý tôi là trang web rất quan trọng, bản thân tôi không lưu trữ bất kỳ dữ liệu quan trọng nào
Mohammad Ali Akbari
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.