2011-12-22 2 views
1

У меня есть две общедоступные учетные записи хостинга, каждая из которых имеет собственную базу данных (ее собственный вход cPanel). Предполагая, что эти две базы данных имеют одинаковую структуру, что мне нужно сделать для их синхронизации?Перемещение данных между базами данных на двух общедоступных учетных записях

Сценарий синхронизации будет находиться в домене, связанном с одной из учетных записей хостинга. Я знаю, что MySQL/PHP для синхронизации баз данных, находящихся на одной учетной записи, довольно прост, но меня здесь путают, как получить доступ к базе данных, которая находится на другом хостинге?

Это не разовая вещь, мне нужно сделать это, нажав кнопку/ссылку.

Единственная вещь, которая приходит на ум, заключается в том, что удаленная база данных экспортирует все в CSV-файлы на регулярной основе и имеет сценарий в домене, подключенном к первой базе данных, импортировать все, но есть ли лучший способ?

В случае, если весь этот вопрос запутан, суть проблемы в том, что - есть ли способ иметь сценарий в домене для доступа к базе данных на совершенно другой учетной записи с общим хостингом?

+0

Почему вы не добавляете удаленного пользователя в базу данных, которую хотите перенести ( @) и использовать ее в своем скрипте для доступа к данным? – Efthymis

+1

@ Efthymis не все хостеры отказываются от имен хостов для серверов БД. –

+0

@SergeiTulentsev вы правы. У меня был мой хозяин. :) – Efthymis

ответ

0

Короче говоря, нет, нет способа.

Обычно хостинг-провайдеры разрешают доступ только к localhost пользователям. Это означает, что сценарий с другого компьютера не может получить к нему доступ.

Кроме того, что это за синхронизация? Односторонний или двусторонний? (но, я думаю, это не входит в сферу применения)

Единственное жизнеспособное решение, которое приходит на ум, - это какая-то процедура сброса/восстановления.

Пример:

  • веб-сервер A (источник данных) определяет URL, путем запроса, который вы можете получить сбрасывали содержимое DB

  • веб-сервер B (пункт назначения данных) определяет страницу с кнопкой «Синхронизация».

  • после нажатия кнопки «Синхронизация» сервер B выберет этот URL-адрес с сервера A, получит данные A и объединит их со своим.

ПРИМЕЧАНИЕ

Это важно для обеспечения экспорта данных URL. В этом скрипте вы можете проверить, например, IP входящего запроса, или наличие и правильность «access_token» или что угодно.

+0

Это должно быть двухсторонним, но я бы согласился на один способ. И что, если я перевежу их на одного хостинг-провайдера? Будут ли какие-то проблемы? – robert

+0

Итак, что вы думаете о моем решении? –

+0

Где будет этот url? Допустим, что доменами являются domain1.com и domain2.com, а кнопка синхронизации - на домене2. – robert

0

Можете ли вы подключиться к базе данных через туннель SSL/SSH или PHP? Если это так, попробуйте инструмент сравнения данных в dbForge Studio MySQL.

Инструмент сравнения данных позволит вам сравнивать данные между различными базами данных. Вы можете протестировать его с пробной версией.