sav-ledi
Участник
Offline
|
|
« : 04-10-2010 09:17 » |
|
Помогите новичёку - студенту по sql server 2005: Как задать расписание для экспорта/импорта данных между базами! есть рабочая база, которая постоянно доробатывается. если я делаю coonect к ней, то там постоянно весит пользователь, и сохранить конфигарацию разработчикам не удаётся. Чтоб этого не происходило, я (пока) ручками делаю экспорт необходимых мне таблиц в другую базу на этом же сервере, и connect устанавлию уже к ней! В рабочей базе данные постоянно обновляются. Как правильно автоматом обновлять данные через определённый промежуток времени? Я почитала про DTS пакеты, но конкретных примеров или инструкций как задать это расписание пока не нашла! если ко сталкивался подскажите!!!
|
|
|
Записан
|
|
|
|
Dale
|
|
« Ответ #1 : 04-10-2010 10:45 » |
|
Схема базы в процессе доработки меняется?
|
|
|
Записан
|
Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.
Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard
Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
|
|
|
HandKot
Молодой специалист
Offline
|
|
« Ответ #2 : 04-10-2010 11:08 » |
|
при условии постоянно доробатывается то можно предложить 1. по расписанию делать BACKUP и потом RESTORE в другую никаких DTS не надо (тем более в 2005 используется SSIS)
2. если нужны данные только одной таблицы и она не меняет свою структуру, то можно сделать и экспорт импорт или репликацию
|
|
|
Записан
|
I Have Nine Lives You Have One Only THINK!
|
|
|
sav-ledi
Участник
Offline
|
|
« Ответ #3 : 04-10-2010 12:26 » |
|
схема базы постоянно доробатывается, но необходимые мне таблицы являются как правило базовыми, их не трогают мне необходимы данные из 8-ми таблиц. и если можно как-то поподробнее...
|
|
|
Записан
|
|
|
|
Dale
|
|
« Ответ #4 : 04-10-2010 13:13 » |
|
Если схема постоянно меняется, то лучший вариант - следовать совету HandKot №1. DTS (и его наследник SSIS)задумывались несколько для других задач, и в данном случае они не вполне уместны.
Есть еще разновидность этого метода - переводить исходную базу данных в оффлайн, копировать ее файлы и подключать копии к серверу. Это быстрее, но на некоторое (небольшое) время исходная база будет недоступна.
Когда схема устаканится, можно будет перейти к репликации данных.
|
|
|
Записан
|
Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.
Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard
Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
|
|
|
sav-ledi
Участник
Offline
|
|
« Ответ #5 : 05-10-2010 02:13 » |
|
Благодарю за советы! Такой ещё вопрос: есть у кого пример посмотреть, как выгрузить данные из базы в базу с кнопки(принудительно в данный момент), то есть написать обработчик. Вообще коннект к базе у меня осуществляет ASP (корпоративный портал на C# пишу).
|
|
|
Записан
|
|
|
|
Dale
|
|
« Ответ #6 : 05-10-2010 06:03 » |
|
Чтобы сделать backup базы данных, выполните запрос наподобие: BACKUP DATABASE [UTR] TO DISK = 'd:\Backup\UTR.bak' WITH FORMAT, INIT, NAME = N'UTR-Full Database Backup', SKIP Для restore создайте аналогичный скрипт. Как выполнять запросы SQL по нажатию кнопки, наверняка уже знаете.
|
|
|
Записан
|
Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.
Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard
Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
|
|
|
HandKot
Молодой специалист
Offline
|
|
« Ответ #7 : 05-10-2010 06:18 » |
|
DTS (и его наследник SSIS)задумывались несколько для других задач, и в данном случае они не вполне уместны. Я думаю, что он задумывался для таких задач (DTS - Data Transformation Service). Просто функционал намного шире обычного экспорта\импорта данных. И если структура этих восьми таблиц не меняется, то проще сделать пакетом. чтобы особо не мучится, то можно запуститть мастер "Экспорт данных" и в конце сохранить как SSIS пакет. Запускать его потом командой dtexec.exe по нажатию кнопки
|
|
« Последнее редактирование: 05-10-2010 06:19 от HandKot »
|
Записан
|
I Have Nine Lives You Have One Only THINK!
|
|
|
Dale
|
|
« Ответ #8 : 05-10-2010 06:42 » |
|
Я думаю, что он задумывался для таких задач (DTS - Data Transformation Service). Просто функционал намного шире обычного экспорта\импорта данных. Он скорее позиционируется как средство обмена данными с другими источниками данных (не только MS SQL и даже не только СУБД) с одновременными преобразованиями. Как частный случай можно применить и для нашего случая, но связка backup-restore тут гораздо уместнее, поскольку парой операций создает полную копию не только данных, но и прочих объектов (хранимые процедуры, триггеры и т.п.). Пока схема базы нестабильна, это очень пригодится. Да и впоследствии импорт-экспорт через DTS тоже будет не так удобен, как репликация. Вот если придется тянуть данные из какого-нибудь CSV или Access, тут да, без него не обойтись.
|
|
|
Записан
|
Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.
Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard
Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
|
|
|
sav-ledi
Участник
Offline
|
|
« Ответ #9 : 05-10-2010 10:25 » |
|
Мега Спасибо!!!!
|
|
|
Записан
|
|
|
|
|