Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.02.06;
Скачать: [xml.tar.bz2];

Вниз

корректный перенос данных MSSQL   Найти похожие ветки 

 
atmamont   (2003-01-20 00:54) [0]

Есть рабочая и домашняя машины.
Как корректно отражать изменения в структуре базы с сохранением данных?
Какой из вариантов обычно используется?
1. тупо копировать файлы mdf, ldf
2. на источнике делать create sql script, потом выгружать данные, на приемнике восстанавливать структуру и импортировать данные
3. тут еще много вариантов есть, однако лучше послушаю опытных людей


 
Reindeer Moss Eater   (2003-01-20 08:58) [1]

Все изменения структуры (в том числе иначальный вариант) очень удобно иметь в виде скриптов.


 
atmamont   (2003-01-20 14:47) [2]

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


 
Reindeer Moss Eater   (2003-01-20 14:51) [3]

Почему ручками-то?
Кто нибудь запрещал писать утилиты генрации SQL скриптов на вставку записей?


 
atmamont   (2003-01-20 15:23) [4]

это подразумевает полный перенос данных, что в случае с большой базой плохо :)


 
Reindeer Moss Eater   (2003-01-20 15:28) [5]

Чем плохо и кому?


 
atmamont   (2003-01-20 15:29) [6]

это не по теме.
спасибо за твои предложения, я понял что имеется в виду


 
Мышь   (2003-01-20 20:51) [7]

Можно "после добавления полей в таблицу автоматом получить скрипты, изменяющие первоначальную структуру таблицы". Для этого есть галочка в диалогах, которые появляются при подтверждении изменений структуры таблиц в Enterprise Manager"e (в MSSQL70 точно есть). Далее, придется ручками (ну, в смысле тем же EM"ом) заскриптовать представления с учетом их взаимосвязей, а также хранимые процедуры и т.д. и т.п.
А еще есть много программок, которые сравнивают две базы и модифицируют их, причем и структуры и данные.


 
Alex Konshin   (2003-01-20 21:50) [8]

Можно перенести базу целиком в виде файлов. Крайне желательно ее ужать, чтобы логи были по-короче, ну и понятно зазиповать. Если после этого она влазит, например, на CD-RW или OMD, то потом приносишь ее домой целиком, разворачиваешь на тот же драйв и по такому же пути.
Но я тащил все базы вместе с системными, если нужно таскать только одну базу, то, возможно, нужно будет сначала создать пустую базу с тем же именем и на том же месте, а потом просто подменить файлы. Вроде так тоже работало - сейчас уже не помню.
Кстати, возможно, что после такого финта можно будет просто backup-restore, но врать не буду - не пробовал.


 
atmamont   (2003-01-20 23:34) [9]

на первичной стадии разработки она вообще на дискетку влазит


 
Kalugin   (2003-01-21 00:18) [10]

Мастера! а такой простой способ как снять в однм месте бэкап и поднять его в другом не рассмотривается?


 
Higs   (2003-01-21 08:57) [11]

А какие, например, есть программы "которые сравнивают две базы и модифицируют их, причем и структуры и данные."?


 
bolega   (2003-01-21 09:38) [12]

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

А вот если названия БД не совпадают, то при restore
начинает что-то там ругаться, но тут же предлагает
поменять значение физ. расположения базы (не имени БД,
а пути к файлам!). Меняешь как надо, и дальше все OK.


 
bolega   (2003-01-21 09:49) [13]

> А какие, например, есть программы "которые сравнивают две базы > и модифицируют их, причем и структуры и данные."?

Есть у меня такая. Где брал не помню.
Называется SQL ToolBox.
Сама она ничего не модифицирует, но может генерировать
соответствующий SQL-код. Умеет сравнивать таблицы, view, sp.
Freeware.
Кому надо - давайте email.


 
Higs   (2003-01-21 10:02) [14]

А мыло в профиле, то бишь, и не скрыто! Потому как именно это и интересно - сама пусть ничего не меняет, нужна именно разница в сгенеренных скриптах!!!


 
DPetrovich   (2003-01-21 10:19) [15]

Удалено модератором
Примечание: Личная переписка, используй для это емайл


 
bolega   (2003-01-21 10:40) [16]

> А мыло в профиле, то бишь, и не скрыто!

Пардон...
oleg@yugmes.elektra.ru

Из readme:
Возможности программы:
Генерация шаблонов и скриптов Transact-SQL для вставки, удаления, обновления, выборки записей из таблицы, выгрузки таблицы в скрипт, обновление таблицы по ключевому полю, генерация Basic, Java кода для класса обработки таблицы, генерация Basic кода для работы с диалогом, сравнение структуры таблиц, сравнение скриптов процедур, генерация IN/OUT скриптов для BCP.


 
aston   (2003-01-21 14:09) [17]

IMHO, всю структуру базы данных необходимо проектировать и создавать на сервере с использованием соответствующих средств, которые называются Data Modeling Tools. Это особенно необходимо, когда проект достаточно крупный и его разрабатывают (поддерживают) несколько (десятков, сотен и т.д.) человек, т.к. вся структура бызы представлена довольно наглядно со всеми взаимосвязями, а не тупым линейным списком, как в SQLNavigator"e, TOAD"e, IBExperte и тому подобными DBMS-средставми.

Мы у себя, например, используем ErWin. Если структуру необходимо поддерживать на разных серверах - вещь незаменимая.
Технология такая: рисуешь (создаешь заново или модифицируешь) в ErWin"е структуру базы. Делаешь Forward Engeniring.
ErWin выдает скрипт, в котором определы только НЕОБХОДИМЫЕ DDL"ы, которые нужны для синхронизации структуры реальной базы с той структурой, которая в ErWin"е.

Далее таскаешь с собой только Er-файл (к клиенту или домой). Открываешь его в ErWin"е на другой машине, цепляешся к другому серверу. Вызываешь Forward Engeniring (DBSync, если для одной таблицы) - получаешь нужный скрипт.

Все, занавес.


 
atmamont   (2003-01-21 14:27) [18]

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

а если нет, то это стрельба из пушки по воробьям
все зависит от конкретной ситуации


 
mate   (2003-01-21 14:41) [19]

bolega (21.01.03 09:49)
mate_ru@fromru.com
С огромной благодарностью. :)


 
Higs   (2003-01-21 21:49) [20]

Не,то,что от bolego, именно то, что и хотелось!!! Спасибо!!!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.02.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.01 c
14-15836
Hohol
2003-01-22 16:33
2003.02.06
Справочники .....


7-15949
Kinda
2002-11-29 20:28
2003.02.06
Verifying DMI Pool Data...


9-15392
Sewix
2002-08-20 04:17
2003.02.06
Скролинг карты


1-15692
LongIsland
2003-01-27 15:44
2003.02.06
Треклятый Access violation


14-15817
KGB
2003-01-17 18:51
2003.02.06
Давно хотел спросить , но стеснялся





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский