Чи можна безпечно спорожнити будь-який кеш_ *?


14

Іноді при переміщенні бази даних вона може бути занадто великою. Чи можна будь-яку з попередньо встановлених таблиць "cache_" очистити, не викликаючи проблем?


2
Досі я не стикався з жодними проблемами, обрізаючи ці таблиці.
GoodSp33d

Відповіді:


14

За одним винятком, так. Цей виняток є cache_form. Це насправді не є таблицею кешу, але містить тимчасову інформацію $ form_state про форми, які зараз відображаються на вашому сайті. Очищення цієї таблиці призведе до недійсності цих форм, і коли користувач потім спробує подати цю форму, він отримає повідомлення про помилку і повинен знову заповнити цю форму.

Зверніть увагу , що drush sql-dumpі резервне копіювання і Migrate автоматично вийде з утримання цих та інших таблиць при створенні дампа бази даних з цим замість туздИшпра або PHPMyAdmin.


drush sql-dump насправді містить таблицю 'cache_form'.
cjoy

@remote: Я не мав на увазі інакше (хоча й не знав, що це явно зберігає cache_form). Не соромтесь редагувати (або запропонувати редагування), якщо ви вважаєте, що моя відповідь вводить в оману.
Бердір

4

У цьому списку є "фальшивий друг". cache_form не є таблицею кешу, і випорожнення його призведе до недійсності всіх форм, активних на сайті в цей момент.

Я також не бачу причини, чому ви б використовували phpmyadmin для цього. Він незграбний і схильний до помилок. "drush cc all" - твій друг :)


3

Призначення таблиць кешу - збереження обчислених значень. Коли модуль викликає cache_get () , і він повертає порожнє значення, то він просто виконує код, щоб отримати назад кешовані значення.
Усі відомі мені модулі автоматично виконують код, щоб отримати значення, яке вони очікували в кеші, якщо кеш порожній; випорожнення кешу не викликає проблем з модулями, які використовують його.


3

Я робив це багато разів і не знайшов жодної проблеми, роблячи це.

Важливе повідомлення - спробуйте очистити всі таблиці кешу одночасно. Це не дозволить Drupal використовувати недійсні дані кешу.


У цих таблицях у мене дуже важливі дані, ви впевнені на 120%? ;)
Мохаммед Алі Акбарі

Так, але для ваших дуже важливих даних спочатку візьміть резервну копію. :)
j2r

2
@MohammadAliAkbari Якщо у вас є важливі дані, то вони справді повинні зберігатися десь в іншому місці, а також таблиці кеш-пам'яті ...
Chapabu

@ j2r, Я теж це зробив кілька разів. Без проблем. +1
Сіту

@Chapabu Я маю на увазі важливий сайт, я не зберігав жодних важливих даних
Мохаммед Алі Акбарі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.