2012-03-30 2 views
0

Имеет ли смысл просто копировать файлы mysql \ data и репликации mysql между центрами обработки данных? У меня возникает впечатление, что репликация mysql может быть сложной, когда выполняется кросс-центр обработки данных. И если я просто копирую, я мог бы легко переключиться на другой центр обработки данных без беспокойства, если он является основным или подчиненным. Есть предположения?Центр перекрестных данных: репликация MySQL и простое копирование файлов?

+0

Что вы пытаетесь сделать с центрами обработки данных? Если вы не выполните репликацию, у вас будут непоследовательные/старые данные о переключении. – KernelM

+0

@KernelM Я пытаюсь перехватить центр обработки данных, поэтому, если DC1 не удается, я могу просто переключиться на DC2. – IMB

ответ

1

MySQL с механизмом хранения InnoDB использует многоверсию строк. Это означает, что в базу данных есть изменения, которые еще не могут быть выполнены (и возможности будут возвращены!). Если вы просто скопируете файлы, вы окажетесь в несогласованном состоянии.

Если вы используете MyISAM, копирование файлов безопасно. Replication hoverwer будет передавать только изменения, в то время как копирование будет передавать всю базу данных каждый раз. Что неразумно с большими базами данных.

+0

Ну, я не думал о Innodb, и вы правильно относитесь к незафиксированным строкам. Поэтому я предполагаю, что другое решение заключается в копировании дампа SQL (и импорта), я считаю, что дамп содержит только зафиксированные строки? – IMB

+1

Можно сделать постоянную горячую резервную копию InnoDB (почти), но вы должны быть очень осторожны. http://www.mysqlperformanceblog.com/2006/08/21/using-lvm-for-mysql-backup-and-replication-setup/ – KernelM

0

Репликация синхронизирует базу данных между центрами обработки данных «вживую». В то время как копирование всей базы данных занимает много времени, и базы данных будут деинхронизировать после того, как будут сделаны первые изменения.