![]() |
Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
|
|
#1 |
|
Guest
Сообщений: n/a
|
Раз в день приходится делать бэкап (копирую папки с сервера, БД - через adminer делаю выгрузку).
Что бы существенно уменьшить вес бэкапа На сервере копирую все кроме папки typo3temp В базе данных перед копированием очищаю таблицы sys_log и sys_history Что еще можно очищать из временных данных и что за таблицы: cache_extensions cache_imagesizes cache_md5params cache_treelist cache_typo3temp_log cf_cache_hash cf_cache_hash_tags cf_cache_pages cf_cache_pages_tags cf_cache_pagesection cf_cache_pagesection_tags cf_extbase_object cf_extbase_object_tags cf_extbase_reflection cf_extbase_reflection_tags cf_workspaces_cache cf_workspaces_cache_tags |
|
|
|
#2 |
|
Senior Member
|
Чистить кэши = замедлять работу сайта пока кэши снова не наполнятся.
Лучше напишите простенький скрипт-обертку для mysqldump и делайте выгрузку всех таблиц полностью, а *cache* таблиц только как "CREATE TABLE". К вашему списку я бы добавил cache_pages, и tx_realurl***cache |
|
|
|
|
|
#3 |
|
Senior Member
|
Обычно самая большая таблица на не нагруженных проектах это cache_extensions - ее записи можно смело выкинуть при бэкапе.
|
|
|
|
|
|
#4 |
|
Guest
Сообщений: n/a
|
В общем после очистки БД все начинает весить примерног на 25% меньше...
Это уже хорошо! Спасибо! |
|
|
|
#5 |
|
Senior Member
|
Может так проще:
http://xn--80abcjdogk0b.xn--80afg4bg...hi-sypex-dump/ Как уже писал, БД использует InnoDB, что подразумевает постоянное разрастание размера файла БД... Решить это можно лишь периодическим созданием резервной копии и воссозданием БД из нее... Может я где-то и ошибаюсь, но других решений не нашел, а вот инструментик для БД хороший... |
|
|
|
|
|
#6 | |
|
Senior Member
|
Цитата:
|
|
|
|
|
|
|
#7 |
|
Senior Member
|
Та же ерунда, вид сбоку... Сервер нужно останавливать, ну так какая разница - конвертить БД несколько раз, или просто зарезервировать и воссоздать?
|
|
|
|
|
|
#8 |
|
Senior Member
|
Сервер в рецепте нужно остановить один раз, далее очистка просто производиться конвертацией таблиц двойной без необходимости остановки. Рецепт, отмечу, предназначен не для переноса, но для работающего сайта.
А SypexDumper - бесспорно замечательный инструмент, сам пользуюсь и всем тут советовал раньше. |
|
|
|
|
|
#9 |
|
Senior Member
|
А ведь в исходном вопросе речь шла не про чистку как таковую, а про бэкап базы без лишних данных.
Еще раз про мой рецепт подробнее и с примером. Суть в том, что бы дампить таблицы содержание которых нам в бэкапе не нужно без данных (только структуру), остальные таблицы бэкапить с данными. Пример bash скрипта для этой цели: Код:
# юзер базы данных + пароль
USER=user
PASSWORD=pass
CHARSET=cp1251
# куда сохранять бэкапы - желательно за пределами htdocs
BACKUP=/home/userX/dump
date '+%Y-%m-%d %T'
echo "Backup databases to $BACKUP"
# делаем выборку списка баз, исключаем не нужные в бэкапе (как минимум information_schema)
for database in `mysql -u $USER -p$PASSWORD -e'SHOW DATABASES;' | grep -v information_schema | grep -v something`;
do
mkdir --mode=777 $BACKUP/$database
cd $BACKUP/$database
for table in `mysql -u $USER -p$PASSWORD $database -e'SHOW TABLES;'`;
do
### exclude empty tables
if [[ $table == cache_* || $table == tx_realurl_* || $table == tx_tcdirectmail_clicklinks || $table == tx_tcdirectmail_sentlog ]];
then
echo ''
echo "mysqldump --opt --no-data -u $USER -p$PASSWORD $database $table > $table.sql;"
mysqldump --default-character-set=$CHARSET --opt --no-data -u $USER -p$PASSWORD $database $table > $table.sql
date '+%Y-%m-%d %T'
echo "gzip --force $table.sql;"
gzip --force $table.sql
date '+%Y-%m-%d %T'
### else full data export
else
echo ''
echo "mysqldump --default-character-set=$CHARSET --add-locks --skip-comments --skip-extended-insert --hex-blob --add-drop-table --quick -u $USER -p$PASSWORD $database $table > $table.sql;"
mysqldump --default-character-set=$CHARSET --add-locks --skip-comments --skip-extended-insert --hex-blob --add-drop-table --quick -u $USER -p$PASSWORD $database $table > $table.sql
date '+%Y-%m-%d %T'
echo "gzip --fast --force $table.sql;"
gzip --fast --force $table.sql
date '+%Y-%m-%d %T'
fi
done
done
В результате в BACKUP папке создается структура папок с названими всех нужных баз данных. В каждой папке для каждой таблицы создается отдельный архив. BACKUP папка скачивается раз в день по расписанию по FTP. |
|
|
|
|
|
#10 |
|
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
Еще можно очистить
cache_extensions sys_log sys_history tx_realurl_errorlog + можно выключить ведение логов для sys_log |
|
|
|
![]() |
| Опции темы | |
| Опции просмотра | |
|
|
Похожие темы
|
||||
| Тема | Автор | Раздел | Ответов | Последнее сообщение |
| Настройки параметров ImageMagick для TYPO3 на FreeBSD и Linux | Valery Romanchev | Мастер-класс | 9 | 25.06.2013 22:38 |
| T3CON12DE - Community, the TYPO3 family and Neos | RSS Bot | Новости TYPO3 (на английском) | 0 | 16.10.2012 20:10 |
| T3CON12DE - Community, the TYPO3 family and Neos | RSS Bot | Новости TYPO3 (на английском) | 0 | 16.10.2012 13:47 |
| T3CON12DE - Community, the TYPO3 family and Neos | RSS Bot | Новости TYPO3 (на английском) | 0 | 15.10.2012 20:10 |
| T3CON12DE - Community, the TYPO3 family and Neos | RSS Bot | Новости TYPO3 (на английском) | 0 | 15.10.2012 16:06 |