|
MySQL.RU - Webboard
Вернуться
Кто как делает backup InnoDB? (Рубль) 12/01/2005 - 13:09:05
Re: Кто как делает backup InnoDB? (Dinky) 12/01/2005 - 20:03:44
Re: Кто как делает backup InnoDB? (Віталій) 13/01/2005 - 10:59:03
Re: А что ? У меня по ночам файлы копируются :) (Marat_L) 13/01/2005 - 16:21:55
Re: А что ? У меня по ночам файлы копируются :) (Рубль) 13/01/2005 - 16:33:03
Re: А что ? У меня по ночам файлы копируются :) (Віталій) 13/01/2005 - 17:29:50
Re: Приведи пример (Marat_L) 14/01/2005 - 14:11:15
Re: Ага, я - Черный плащ! (Рубль) 14/01/2005 - 15:49:05
Re: Приведи пример (Віталій) 14/01/2005 - 17:19:30
Re: Приведи пример (Dinky) 14/01/2005 - 19:50:02
Re: Приведи пример (Віталій) 17/01/2005 - 11:10:52
Re: Кто как делает backup InnoDB? (Рубль) 25/01/2005 - 14:32:47
> Original message text:
> From: Рубль - 12/01/2005 - 13:09:05
> Subject:Кто как делает backup InnoDB?
> -----------------
> Господа!
> Кто и как автоматизировал резервное копирование базы InnoDB?
> У меня ничего умного в голову не приходит как сделать дамп единой транзакцией.
> Или остановить сервак, скопировать нужные файлы и запустить снова.
> Может есть что-то более культурное для автоматизации ентого процесса?
>
From: Dinky - 14/01/2005 - 19:50:02
Subject:Приведи пример
-----------------
> mysqldump -uUSER -pPASSWORD --opt -q -F BASE1> BASE1.sql
> (кстати, интересно, с InnoDB она работает в транзакции или нет ?)
mysqldump - обычный mysql клент, в этом смысле он от твоей программы почти не отличается ;) опция "--opt" сначала лочит все таблицы в BASE1 на изменение, потом дампит...
что до транзакций, читаем тут (в моем кривом переводе :): http://dev.mysql.com/doc/mysql/en/LOCK_TABLES.html
- lock tables комитит все активные транзакции автоматом, а start transaction - выполняет UNLOCK TABLES
- чтобы правильно использовать lock tables с транзакционными таблицами (innodb), надо установить AUTOCOMMIT = 0 и не использовать unlock tables, пока вы явно не закомитите транзикцию. Теперь когда вы делаете LOCK TABLES, MySQL и InnoDb ставят каждый по своей внутренней блокировке на таблицу. InnoDB снимет блокировку на следующем комите, а MySQL будет ее держать до команды unlock tables. Крайне не рекомендуется иметь AUTOCOMMIT = 1, потому что InnoDB автоматом снимет свою блокировку сразу после выполнения lock tables, и очень легко поймать deadlock :) А с 4.1.9 InnoDB вообще не делает никаких блокировок, не обращая на lock table никакого внимания, если AUTOCOMMIT=1.
Далее, следуем на: http://dev.mysql.com/doc/mysql/en/Backing_up.html
mysqldump - опция "--single-transaction" позволит вам получить целостный снапшот данных, не блокируя других клиентов.
так зачем говорите писать собственную программу для этого? :)
--
Dmitry
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
19731
|
|