LINUX.ORG.RU
решено ФорумAdmin

mysqldump. Нужно ли останавливать mysql сервер для mysqldump?

 ,


0

1

Нужно ли останавливать MySQL сервер для mysqldump?

  • Сервер сильно работает с базой.
  • Важно, чтобы не останавливалась работа сайта, работающего с базой.
  • Не принципиальна актуальность данных в дампе, главное - чтоб было.

Если я выполню:

mysqldump --all-databases | gzip > all_databases.sql.gz

Повлияет ли это на работу сайта?

Спасибо.



Последнее исправление: joe_diez (всего исправлений: 3)

Вот, этот недоскрипт, как пример, установленный в crontab на 03:00 делает дамп всех бд и складирует их в dir:

#!/bin/bash
dir="/home/dbbackup/"
databases=`mysql -uusername -ppassword -N -B -e "show databases" | grep -v "information_schema"`
cd $dir
for i in $databases; do echo Dumping $i ; mysqldump -uusername -ppassword --lock-tables=FALSE $i | gzip > $i.gz;done
int13h ★★★★★
()
Последнее исправление: int13h (всего исправлений: 2)

Дамп на время работы лочит таблицы так что могут быть приколы при работающем сайте

Но проявиться это может только если база большая

ism ★★★
()
Ответ на: комментарий от joe_diez

Непонятно как происходит дамп незалоченой таблицы, так что надо выяснять возможные последствия

ism ★★★
()
Ответ на: комментарий от ism

Тут и так понятно, что итоговый дамп будет некосистентен, и будет являться бесполезным куском говна. Зачем это дерьмо нужно ТС - он видимо сам не понимает.

whoami
()

Если мешать сайту ну совсем не хочется, а база прям большая то можно настроить мастер-слэйв репликацию и снимать дампы со слейва. Правда один раз по началу всё-равно понадобится сделать дамп с мастера

MrClon ★★★★★
()
Ответ на: комментарий от MrClon

можно настроить мастер-слэйв репликацию и снимать дампы со слейва

this

anonymous
()

Если всё в innodb, то смотреть в сторону флага "--single-transaction" и "--skip-lock-tables". Ещё есть mydumper (быстрее задампили, меньше лежали) и xtrabackup (блокировка только на время копирования frm и myisam файлов).

Поведение по-умолчанию в mysqldump - запретить запись во все таблицы на время бекапа. Если база больше 5ГБ и сайт не read-only сайт ложится на время бекапа сам.

ihanick
()
Ответ на: комментарий от int13h

Без лока будет кривой дамп. Если конечно сайтик (или что там) не работает с базой в ридонли.

Lavos ★★★★★
()

Мне кажется с остановленным mysql ты не сможешь сделать mysqldump. При снятии дампа таблицы базы будут заблокированы, если база весит немного - это не страшно, никто особо не заметит.

splinoz
()
Ответ на: комментарий от whoami

это слишком сильно. тс не обязательно интересует консистентность на уровне групп записей.

taker
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.