что является лучшим способом обмена данными между двумя серверами - PullRequest
0 голосов
/ 01 ноября 2011

Привет, у меня есть базы данных mysql на двух разных серверах / машинах.
Мне нужно вытащить данные с server1 и дамп во временную таблицу на сервере 2 ежедневно

На самом деле требование состоит в том, что когда статьи на сервере 1 готовы к публикации в хранилище / сервере2, я хочу заполнить сервер2 / хранилище этими данными

Сервер1 находится на Lynix, а сервер 2 на выделенном сервере Windows

Так что мне нужно спросить, какой лучший способ сделать это Страница PHP с кнопкой, веб-службами, Windows-службой Windows, запланированной задачей или чем-то еще
пожалуйста посоветуйте
Спасибо

Ответы [ 2 ]

1 голос
/ 21 ноября 2012

Как насчет этого?Я знаю, что упускаю некоторые вещи, я просто пытаюсь быть кратким.

$s1 = mysql_connect("server1");
$s2 = mysql_connect("server2");

$r = mysql_query("select data from table_name where whatever", $s1);

while($row = mysql_fetch_row($r))
{
    mysql_query("insert into table_name ('$row[0]')", $s2);
}
0 голосов
/ 01 ноября 2011

Вы можете использовать скрипт командной строки, запускаемый по заданию cron, на сервере Linux.Который делает что-то вроде:

mysqldump .... server1 |mysql -h server2 -uuser -ppassword db_name

Означает сброс таблицы в стандартный вывод и прямую передачу дампа на сервер2.Точный синтаксис вы можете найти в справочных страницах mysqldump.

...