The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Раздел полезных советов: Резервное копирование MySQL с испол..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Резервное копирование MySQL с испол..."  +1 +/
Сообщение от auto_tips on 06-Фев-10, 21:25 
Утилита mylvmbackup (http://lenz.homelinux.org/mylvmbackup/) позволяет автоматизировать создание резервных копий БД MySQL с минимальным временем простоя базы. Процесс создания бэкапа состоит из следующих фаз: установка блокировки на таблицы, инициирование сброса кэшей на диск, создание LVM снапшота директории с MySQL таблицами, снятие блокировки. Так как время создания снапшота очень мало, простой базы сводится к минимуму при полном сохранении целостности.

Пример использования утилиты для системы на которой уже работает MySQL, директория с БД (/var/lib/mysql) размещена на LVM разделе и в системе доступен раздел /dev/sdb на котором достаточно для создания временных LVM снапшотов.

   # df -h
   ...
   /dev/mapper/server1-mysql  8.9G  170M  8.3G   2% /var/lib/mysql

Имя LVM группы server1, имя раздела с данными MySQL - mysql.

   # pvdisplay
   --- Physical volume ---
   PV Name               /dev/sda5
   VG Name               server1
   PV Size               29.52 GB / not usable 3.66 MB
   ...

   # vgdisplay
  --- Volume group ---
  VG Name               server1
  System ID
  Format                lvm2
  ...

   # lvdisplay
  --- Logical volume ---
  LV Name                /dev/server1/mysql
  VG Name                server1
  ...

Диск /dev/sdb имеет один раздел /dev/sdb1, занимающий все пространство диска. Подключаем его к имеющемуся LVM группе server1 с целью увеличения свободного места, которое потребуется для работы со снапшотами. Дополнительные LVM разделы создавать не нужно.

   # pvcreate /dev/sdb1
   # vgextend server1 /dev/sdb1

Устанавливаем пакет mylvmbackup:

   # aptitude install mylvmbackup

Изучаем руководство по mylvmbackup и при необходимости меняем файл конфигурации /etc/mylvmbackup.conf под свои нужды:

   $ man mylvmbackup


По умолчанию бэкапы будут сохраняться в директорию /var/cache/mylvmbackup/backup.

Простейшая команда для создание резервной копии (параметры можно указать в файле конфигурации) MyISAM таблиц:

   mylvmbackup --user=root --password=пароль --mycnf=/etc/mysql/my.cnf \
      --vgname=server1 --lvname=mysql --backuptype=tar

Пример для InnoDB таблиц:

   mylvmbackup --user=root --password=пароль --innodb_recover --skip_flush_tables \
      --mycnf=/etc/mysql/my.cnf --vgname=server1 --lvname=mysql --backuptype=tar

В опции --vgname указываем имя LVM группы, а в опции --lvname имя LVM раздела с данными.


После выполнения команды проверяем корректность создания резервной копии:

   ls -l /var/cache/mylvmbackup/backup

   -rw-r--r-- 1 root root 246847 2010-01-27 19:17 backup-20100127_191658_mysql.tar.gz

В созданном  tar.gz файле находятся две директории:

backup с архивом таблиц, который можно просто распаковать в рабочую директорию /var/lib/mysql при проведении восстановления данных.
backup-pos с копией файла конфигурации my.cnf.


URL: http://www.howtoforge.com/how-to-back-up-mysql-databases-wit...
Обсуждается: http://www.opennet.me/tips/info/2291.shtml

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от Ъ on 06-Фев-10, 21:25 
>Так как время

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

Насколько мало?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от mma on 07-Фев-10, 07:01 
Практически мгновенное
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от Ъ on 07-Фев-10, 08:57 
Спасибо, на slave протестирую.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от sshutdownow email(ok) on 08-Фев-10, 11:26 
To perform a backup, mylvmbackup obtains a read lock on all tables and flushes all server caches to disk, creates a snapshot of the volume containing the MySQL data directory, and unlocks the tables again.

я так тоже делал, обычно быстро

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от Nas_tradamus email(ok) on 09-Фев-10, 16:07 
Очень удобно, если используются инструменты автоматического поднятия упавшей репликации.
А то у меня дамп MyISAM идет минуты 2.
В принципе, при InnoDB мне бы и --single-transaction подошел, но нет возможности пока что перейти на это хранилище.

Увы, LVM нет под FreeBSD. :(

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +1 +/
Сообщение от uldus (ok) on 09-Фев-10, 16:12 
>Увы, LVM нет под FreeBSD. :(

Там и без LVM снапшоты в UFS2 работают: http://www.opennet.me/tips/info/842.shtml

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от Nas_tradamus email(ok) on 09-Фев-10, 16:20 
>>Увы, LVM нет под FreeBSD. :(
>
>Там и без LVM снапшоты в UFS2 работают: http://www.opennet.me/tips/info/842.shtml

Спасибо большое.)

Я натыкался ранее на эту заметку. Но смутили комменты. А сейчас там появились комменты, опровергающие предыдущие комменты... В общем, на Фре, действительно, работают снапшоты, если их делать не в корне ("/") . :)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

8. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от Samm email(??) on 10-Фев-10, 22:45 
"Увы", под фрибсд есть ZFS, что значительно круче )

Под LVM с snapshots у меня наблюдалось серьезное снижение производительности дисковой подсистемы.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

9. "Резервное копирование MySQL с использованием LVM снапшотов в..."  +/
Сообщение от sHaggY_caT (ok) on 11-Фев-10, 18:11 
Под ZFS (как и btrfs) нет аналога Cluster LVM:

http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/...

Для Geom что-то такое сейчас тоже пилят...

Так что, не все так однозначно что удобнее: все зависит от ситуации.
Да и сверху lvm можно сделать почти любую файловую систему (в том числе параллельную или даже ntfs для виртуалки о_О), а сверху навороченных ZFS, btrfs, GPFS могут быть, увы, только они сами, что немного не UNIX-way (имхо)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру