|
MySQL.RU - Webboard
Вернуться
Перекинуть данные между серверами (Олег) 01/10/2014 - 10:50:17
Re: Перекинуть данные между серверами (Akina) 01/10/2014 - 14:47:30
Re: Перекинуть данные между серверами (Олег) 01/10/2014 - 17:07:44
Re: Перекинуть данные между серверами (Akina) 01/10/2014 - 17:51:51
Re: Перекинуть данные между серверами (Олег) 01/10/2014 - 18:47:37
Re: Перекинуть данные между серверами (Akina) 01/10/2014 - 20:32:06
Re: Перекинуть данные между серверами (Олег) 01/10/2014 - 21:40:17
Re: Перекинуть данные между серверами (Олег) 01/10/2014 - 22:01:43
Re: Перекинуть данные между серверами (Akina) 02/10/2014 - 11:26:57
Re: Перекинуть данные между серверами (Akina) 02/10/2014 - 11:54:08
Re: Перекинуть данные между серверами (Akina) 02/10/2014 - 11:56:55
Re: Перекинуть данные между серверами (Олег) 02/10/2014 - 16:38:50
Re: Перекинуть данные между серверами (Олег) 02/10/2014 - 16:48:22
Re: Перекинуть данные между серверами (Олег) 02/10/2014 - 17:36:59
Re: Перекинуть данные между серверами (Akina) 02/10/2014 - 18:14:51
Re: Перекинуть данные между серверами (Олег) 02/10/2014 - 20:07:38
Re: Перекинуть данные между серверами (Akina) 02/10/2014 - 20:45:22
Re: Перекинуть данные между серверами (Олег) 02/10/2014 - 20:45:36
Re: Перекинуть данные между серверами (Олег) 02/10/2014 - 21:21:21
Re: Перекинуть данные между серверами (Akina) 03/10/2014 - 08:49:22
Re: Перекинуть данные между серверами (Олег) 03/10/2014 - 14:09:01
Re: Перекинуть данные между серверами (Akina) 03/10/2014 - 15:25:38
Re: Перекинуть данные между серверами (Олег) 03/10/2014 - 16:30:54
Re: Перекинуть данные между серверами (Akina) 03/10/2014 - 17:50:01
Re: Перекинуть данные между серверами (Олег) 03/10/2014 - 19:02:58
Re: Перекинуть данные между серверами (Akina) 03/10/2014 - 19:41:51
Re: Перекинуть данные между серверами (Олег) 03/10/2014 - 20:52:04
Re: Перекинуть данные между серверами (Олег) 04/10/2014 - 19:25:23
> Original message text:
> From: Олег - 01/10/2014 - 10:50:17
> Subject:Перекинуть данные между серверами
> -----------------
> Привет всем
>
> Есть таблица на одном\их сервере\ах и на другом\их. Формат полностью идентичен. Компы на которых сервера в локальной сети. Нужно данные с одной таблицы переносить в другую допустим раз в минуту и после этого удалять их в таблице источнике. Про репликацию знаю и использую для синхронизации другой таблицы(один-ко-многим), но как репликацию использовать в случае (много-ко-много) не понимаю.
> Потому вопрос такой. Есть ли такой примерно SQL запрос "INSERT INTO сервер2.БД2.tab2 * SELECT * FROM сервер1.БД1.tab1". DSN БД прописаны, версия MySQL 5
>
From: Akina - 02/10/2014 - 11:54:08
Subject:Перекинуть данные между серверами
-----------------
Вот одна из возможных схем, которая пришла в голову. Она не без слабых мест, но работоспособна на первый взгляд.
1) Из серверов Тип 3 формируется кольцо репликации. Кольцо настраивается на игнорирование дублирования ключей.
2) В кольцо вводится дополнительный сервер (или несколько серверов), который не генерирует информации. Он участвует в кольцевой репликации, а также выполняет функции связующего между кольцом и серверами типов 1 и 2.
3) Передача информации в кольцо серверов тип 3 от серверов тип 1 и от кольца серверов тип 3 к серверам тип 2 осуществляется без использования механизма репликации, на основе выгружаемых дампов изменённых данных в согласованном формате (вероятно, через SELECT INTO OUTFILE / LOAD DATA INFILE, но можно и в формате SQL-скриптов). Серверы тип 1 выгружают файловый вид данных на выделенный сервер типа 3 (например, по ФТП), сервер типа 3 формирует свою выгрузку, которую забирают серверы типа 2 опять же по ФТП.
Для реализации процесса выгрузки на серверах типов 1 и 3 потребуется в каждую таблицу добавить поле. В это поле будет помещаться номер выгрузки. Т.е. при пополнении данными поле пустое (NULL), при запуске процесса выгрузки по эвенту все поля с NULL заполняются значением с очередным номером выгрузки, после чего выполняется выгрузка с отбором по значению этого поля.
Для реализации процесса загрузки на серверах типов 3 и 2 создаётся служебная таблица, в которой фиксируется факт загрузки данных из файла выгрузки - фиксируются номер выгрузки, номер сервера-источника и результат загрузки (удача/сбой).
Такое дополнение позволит при необходимости повторно в ручном или полуавтоматическом режиме повторить загрузку проблемных выгрузок, причём в ручном режиме на сервере типа 3 - вообще на любом сервере кольца, а не только на выделенном.
Одновременно массив файлов выгрузки вместе с начальным дампом фактически является дополнительной резервной копией данных.
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
43242
|
|