URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 64643
[ Назад ]

Исходное сообщение
"Как правильно делать жесткий backup баз MySQL?"

Отправлено chainik , 08-Мрт-06 11:30 
В документации пишут, тчо нужно:
LOCK TABLES ...;
FLUSH TABLES;
# Вот здесь есть время скопиировать файлы баз
UNLOCK TABLES;

Но, скажем, если эти команды загружаются из batch-файла, то как другая программа (например которая архивирует и копирует файлы) узнает когда были сброшены таблицы?

Или, скажем, как этот исполняемый batch-файл с sql-командами узнает, что файлы баз скопированы, и можно разблокировать таблицы?

Заранее спасибо.


Содержание

Сообщения в этом обсуждении
"Как правильно делать жесткий backup баз MySQL?"
Отправлено THESERG , 08-Мрт-06 12:41 
примерно так

#!/usr/bin/perl
$DB->Query ("LOCK TABLES ...;");
$DB->Query ("FLUSH TABLES ...;");
system ("cp /var/lib/mysql/БД/таблицы /mnt/backup/дата/БД/");
$DB->Query ("UNLOCK TABLES ...;");


"Как правильно делать жесткий backup баз MySQL?"
Отправлено chainik , 08-Мрт-06 13:12 
>примерно так
>
>#!/usr/bin/perl
>$DB->Query ("LOCK TABLES ...;");
>$DB->Query ("FLUSH TABLES ...;");
>system ("cp /var/lib/mysql/БД/таблицы /mnt/backup/дата/БД/");
>$DB->Query ("UNLOCK TABLES ...;");

Прошу прощения за навязчивость и за незнание Perl, но есть еще такой вопрос. В документации к MySQL указывается, что таблица разблокируется при разрыве соединения. Не будут ли после каждого DB->Query разрываться соединения и сбрасываться блокировки (ведь ответ зависит от внутреннего устройства Perl, с котоорым я почти не знаком)?

Вот, на всякий случай, точный текст из документации.
All tables that are locked by the current thread are implicitly unlocked when the thread issues another LOCK TABLES, or when the connection to the server is closed.

Заранее спасибо.


"Как правильно делать жесткий backup баз MySQL?"
Отправлено THESERG , 08-Мрт-06 17:52 
а соединение не закрывается

http://search.cpan.org/~rudy/DBD-mysql-2.9008/lib/Mysql.pm


"Как правильно делать жесткий backup баз MySQL?"
Отправлено chainik , 08-Мрт-06 17:56 
>а соединение не закрывается
>
>http://search.cpan.org/~rudy/DBD-mysql-2.9008/lib/Mysql.pm

Да, я еще в документации обнаружил, что примерно такой же скрипт поставляется вместе с mysql и называется mysqlhotcopy.