перемещение таблиц между базами данных - PullRequest
1 голос
/ 08 октября 2010

Для небольшой очистки я перемещаю 25 таблиц между базами данных MySQL (различные части оборудования). Это не ВСЕ база данных, всего 25 таблиц из нескольких сотен ... Эти таблицы на самом деле не принадлежат, я не буду вдаваться в причину по причинам NDA.

Теперь это сломает много кода и SQL-запросов.

Каков наилучший способ сделать это?

  1. Переместите их все сразу.

  2. Переместить их на 1 на 1

-

Перемещать их все сразу, довольно мило. Могут быть некоторые сбои и неработающий код, который я пропустил, но перемещение их как блока происходит намного быстрее, меньше времени затрачивается на выталкивание кода.

Перемещать их по одному - это неплохо, меньше шансов разбить большой материал, но МНОГО больше времени будет потрачено на микроуправление работой, избыточную работу и развертывание.

Возможно ли мне какое-то время отразить таблицы между двумя базами данных? Возможно, федеративный стол?

-

Дополнительная информация: 25 таблиц связаны друг с другом по содержанию.

Я не могу отключить базы данных на несколько часов, допустимо около 5 минут простоя.

-

Каков наилучший способ перемещения всех этих данных и поддержания в хорошем состоянии кода, sql и меня?

Можно ли объединить таблицы как способ репликации таблиц в новую базу данных?

-daniel

Ответы [ 3 ]

1 голос
/ 09 октября 2010

Вы можете использовать SQLYog (MySQL интерфейс) для этого.

В качестве опции можно выбрать Powertools -> Мастер синхронизации баз данных

Вы должны иметь возможность открывать обе базы данных удаленно (там должен быть хост%)

1 голос
/ 08 октября 2010

Кажется, что перемещать их по одному за раз было бы способом. Таким образом, у вас есть куча легких маленьких проблем вместо большой сложной проблемы. Я надеюсь, что ваша система прошла множество автоматических тестов, чтобы убедиться, что все эти перестановки ничего не сломали.

Другое дело: вы говорите о закрытии базы данных. Если вы вносите изменения в среду разработки и воплощаете их в жизнь только тогда, когда уверены, что все работает, зачем вам простои в работе? Я надеюсь, что вы не думаете о внесении этих изменений в производство, не сделав этого в процессе разработки.

0 голосов
/ 09 октября 2010

Был там, сделал это, и на самом деле в середине подобного проекта прямо сейчас.С нашими проектами мы унаследовали некоторые из них, которые мы не знаем, что они и где все находятся, но вот общий поток:

  • На новом сервере, настройте любые соответствующие учетные записи
  • Найдите, где необходимо изменить сервер и имя пользователя / пароли, если необходимо, в конфигурации приложения.
  • Завершите работу веб-приложения, чтобы при перемещении не было никаких записей
  • Перемещение БД
  • Переконфигурирование приложения
  • Запустите его резервное копирование
  • Повторите для каждой БД / приложения

Для небольших приложений это займет всего несколько секунд. SQLyog здесь очень помогает.Если у вас большие базы данных или вы решили, что не хотите простоев, подумайте о репликации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...