Змінюй хід війни! Допомагай ЗСУ!

Синхронизация структуры таблиц SQL

  • Автор теми Автор теми Explore
  • Дата створення Дата створення
Статус: Офлайн
Реєстрація: 02.07.2009
Повідом.: 95
Синхронизация структуры таблиц SQL

Подскажите-ка

имеем сайт в инете и его клон на локальной машине под (например) Денвером.

Дома что-то шаманим, добавляем таблицы, столбцы и т.д.
Как без гемора синхронизировать изменения структуры на рабочий сайт?
 
читаем буквари про alter table
 
Alter это конечно здорово.
но как узнать куда что добавлять?
бегать скриптом по базе одной, второй, выявлять различия?

готовые скрипты-решения есть?

Нашел. Буду пробовать

например
Посилання видалено
 
Настройте репликацию на сервере
 
репликацию чего с чем?
подробнее по пунктам распишите плз
 
в phpMyAdmin вроде как был с утра экспорт и импорт...
если вы конечно им пользуетесь.
 
dr_mousefly сказав(ла):
в phpMyAdmin вроде как был с утра экспорт и импорт...
если вы конечно им пользуетесь.
а если внимательно прочитать условие задачи?
 
Т.е. структура таблиц меняется, а данные остаются те же, что и были? Такое бывает? :confused:
 
Prior сказав(ла):
Т.е. структура таблиц меняется, а данные остаются те же, что и были? Такое бывает?
а в чем проблема? добавляется столбец в таблицу или новая таблица в базе в локальной копии. нужно отобразить изменения в реальной базе.

а вы всегда выкатываете 100% готовый сайт в котором никаких апдейтов не бывает в последствии?
 
Нашел. Буду пробовать

например
Посилання видалено

Можно еще сюда посмотреть - Посилання видалено, среди всего прочего делает и сравнение баз. Для некоммерческого использования бесплатная. По-моему, то что нужно.

Называется сравнение схем. Вот скриншот - Посилання видалено
 
а вы всегда выкатываете 100% готовый сайт в котором никаких апдейтов не бывает в последствии?
Нет, конечно. Обычно у меня локальная база идентична серверной. Поэтому просто заменяю всю базу, если изменений много, или некоторые таблицы в противном случае.
В любом случае если изменяется структура таблицы, то обычно меняются и данные таблицы.
 
navicat умеет по-моему это делать.
А вообще нужно чтото типа репозитория для SQL
 
Можно еще сюда посмотреть - Посилання видалено, среди всего прочего делает и сравнение баз. Для некоммерческого использования бесплатная. По-моему, то что нужно.

Называется сравнение схем. Вот скриншот - Посилання видалено

спасибо
то что нужно
 
когда изменяешь что то в локальной копии - сохраняй все запросы, потом выполняй их на рабочем сайте и не будет никакого гемора с синхронизацией.
 
Проще всего, ИМХО, через MySQLAdministrator - экпорт таблиц из домашней базы в файл, импорт таблиц из файла на сервак.
 
когда изменяешь что то в локальной копии - сохраняй все запросы, потом выполняй их на рабочем сайте и не будет никакого гемора с синхронизацией.

я это предлагал в самом начале, но чувак удивился и выдал какойто несвязный текст про диффы =)
 
А если изменяются обе базы? И на рабочем сайте и у разработчика? На рабочем сайте в рабочем режиме добавляются удаляются модифицируются данные. На машине у разработчика меняется структура. Как тогда?
 
А если изменяются обе базы? И на рабочем сайте и у разработчика? На рабочем сайте в рабочем режиме добавляются удаляются модифицируются данные. На машине у разработчика меняется структура. Как тогда?

Это нормальная ситуация, изменения структуры переносятся на рабочий сайт и все. Допустим если на интерфейс добавится новое поле ввода, которое нужно сохранять в базе, то от того что к таблице выполнить запрос 'alter table ... add column ...' остальные данные никак не поменяются )
 
Это понятно. Вопрос как это технически делать? Ручками?
 
Назад
Зверху Знизу