|
|
|
|
|
|
|
|
|
как правильно обновлять бд
| |
#1 | |
|
16.08.2005, 11:35
Привет всем.
Есть две БД, одна для главного сайта (выставлена в Инет),
вторая рабочая(в локале). Обе БД находятся на одном хосте, с одним MySQL сервером.
Суть проблемы такова, в рабочую БД вносятся добавления, после этого делается export
и полученный дамп заливается в главную БД. При этом все изменения касающиеся кол-ва
посещений статьи, комменты, голосования, все это затирается.
Вопрос, как бы сделать так, чтобы заливались только новые данные, а все что уже было
оставалось как есть?
|
|
|
|
|
|
|
16.08.2005, 12:35
Eugenek ну можно например для облегчения обновления дб в инете, после каждого обновления тереть рабочию базу, т.е. делать ее нульцовой, а затем делать дамп данных! не таблици.
т.е. что бы дамп содержал в себе только новое добавленное, а не всю базу.
|
|
|
|
|
|
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть". |
|
|
|
|
|
|
|
|
|
16.08.2005, 12:46
Извини Soniks , но я что-то не совсем уловил мысль, т.е. сделал обновление, с рабочей на главную, потом что, уничтожаю все записи в рабочей БД, дык там же часть служебной инфы?
А во вторых в чем принципиальное отличие дампа, от экспорта всех таблиц?
Я пробовал импортировать даннвые выбирая в PHPmyadmin Тип экспорта "Update" или "Insert",
при импорте начинает ругаться, типа такая таблица уже есть :(
Поэтому получается только через "Replace"
Может я просто чего-то недопонимаю?
|
|
|
|
|
|
|
16.08.2005, 13:25
Eugenek попытаюсь объяснить.
когда ты делаешь экспорт таблицы, тот же дамп, если посмотреть файл дампа, то там ты увидишь запросы на создание таблиц в БД и запросы добавления данных в эти таблицы.
и поэтому, когда ты делаешь импорт всей базы ты получаешь ошибку, что такая-то таблица уже существует. тебе надо сделать так чтобы в дампе содержались запросы только добавления данных и притом новых, тех которых еще нет. Это все зависит от того добавляете ли вы новые записи в БД или же обновляете старые. Конечно можно попробовать другой вариант:
phpmyadmin -> Экспорт -> Снимите галки с "Структура" -> поставьте галку "Игнорировать вставки" -> в поле "Экспорт" выберите нужные таблицы -> Пошел
в результате получите дамп, попробуйте его импортировать в основную БД.
|
|
|
|
|
|
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть". |
|
|
|
|
|
|
|
|
|
16.08.2005, 14:25
Спасибо Soniks, кажется что-то начало проясняться, запросы на создание таблиц я действительно видел, я даже пробовал галочку метить в chek-box "Добавить IF NOT EXISTS".
Процентов 97, это добавление новых данных, изменяется что-то редко, да и если изменять, можно на месте руками.
Попробую вариант с "Игнорировать вставки", я просто не понимал что это означает, а тип экспорта я так понимаю "INSERT".
Сейчас попробую, потом отпишу, что получилось.
Ну что Soniks. очередной тебе Respect!
Как ты и написал сделал так, phpmyadmin -> Экспорт -> Снять галку с "Структура" -> поставить галку "Игнорировать вставки" -> в поле "Экспорт" выберите нужные таблицы -> Пошел
Я выбирал все таблицы для пущей проверки и тип экспорта "INSERT", действительно новые данные появились, а старая инфа осталось "новой".
Еще раз спасибо!
|
|
|
|
|
|
|
16.08.2005, 17:51
Eugenek Всегда пожалуйста :)
|
|
|
|
|
|
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть". |
|
|
|
|
|
|
|
|
Опции темы |
Поиск в этой теме |
|
|
Опции просмотра |
Линейный вид
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:41.
|
|
|
|
|
|
|
|
|
|
|
|
|