Форум OlegON > Компьютеры и Программное обеспечение > Операционные системы и программное обеспечение > MySQL & MariaDB

Как сделать бекап с минимальными блокировками? : MySQL & MariaDB

19.04.2024 4:03


28.11.2020 18:31
student
 
Цитата:
OlegON беру базу, копирую ее запросами рядом, так?
да так, делаешь файл базы по структуре источника (как шаблон), по команде копируешь файл шаблона в нужное имя и подключаешь его к серверу, получаешь копию базы запросам, после выполнения всех запросов просто отключаешь полученную базу от сервера и далее уже любым способом куда надо
здесь есть только один существенный минус - надо всегда иметь актуальный шаблон :)

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

с 2004-го и пока не убили проект где то в 2008\09 у меня так db (парадокс) загрузчик укм2 и нашей кассы (укмвин) из 1с7 и 2000 скуль сервера работал :) я просто уже точно не помню чем стандартный бекап не устраивал - хотя вероятнее всего хотелось иметь свой лисапед :)
28.11.2020 19:04
OlegON
 
ну... тут маленький нюанс, с которого я и начал... блокировки... Aria - нетранзакционная база с блокировками на уровне таблицы... когда ты оттуда что-то запрашиваешь, все остальные курят... и, как ни странно, в базе кто-то что-то делает... в итоге даже если бы я локально что-то переливал, неважно в базу или дамп, в исходной базе клин и она валится после сотни заткнувшихся в ней запросов...
28.11.2020 19:13
student
 
Цитата:
OlegON с блокировками на уровне таблицы... когда ты оттуда что-то запрашиваешь, все остальные курят.
упс, я просто не в курсе этого, просто не ожидал ... тогда только "теневое копирование" как в винде, если оно конечно есть в в твоем линуксе :)
28.11.2020 21:09
OlegON
 
есть не какие-то убогие теневые копирования, а самые нормальные промышленные снапшоты... вопрос только в том, что база это тоже не переживет... все приседания упираются именно в способность мускула помереть при выдергивании из под него табуретки, хотя по скорости он просто бесподобен...
28.11.2020 21:21
student
 
Цитата:
OlegON не какие-то убогие теневые копирования, а самые нормальные промышленные снапшоты
как то не сочетается с
Цитата:
OlegON в способность мускула помереть при выдергивании из под него табуретки
из вики
Теневое копирование (англ. Volume Shadow Copy Service, VSS) — технология, включённая в Microsoft Windows, реализованная в виде службы операционной системы, позволяет копировать файлы, с которыми в данный момент времени ведётся работа, а также системные и заблокированные файлы[1]. Служба необходима для работы следующих программ: восстановление системы, программ архивации (Paragon Drive Backup, Acronis True Image, Veeam Agent for Microsoft Windows, Leo Backup, R Drive Image и другие).
28.11.2020 22:19
OlegON
 
файлы в Линуксе вообще можно копировать когда угодно, за редким исключением, снапшоты же дают возможность получить моментальный снимок системы на момент времени. проблема в том, что мускул нетранзакционный, поэтому получить половину записи в таблице несложно на практике...
Часовой пояс GMT +3, время: 04:03.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.