Отображение прогресса операции restore database (MSSQL)

Oyster
Дата: 02.12.2004 16:48:39
Делаю RESTORE DATABASE через ADO.NET. Надо как-то отображать прогресс операции (% completed). SQL-DMO использовать, к сожалению, нельзя.

Пробовал RESTORE DATABASE ... STATS и хандлер на SqlConnection.InfoMessage - хандлер отрабатывает только после выполнения запроса...

Может, кто-то поможет?
hDrummer
Дата: 02.12.2004 17:33:34
А просто какой-нибудь гиф с часиками не прокатит?
Oyster
Дата: 02.12.2004 17:50:14
Хотелось бы всё-таки нормальный прогресс... если бэкап на 2 гига, клиент может начать плеваться на часики...
ziktuw
Дата: 02.12.2004 17:55:26
При RESTORE, особенно базы существенного объема, часто вылезают всякие нюансы, причем чаще чем не вылезают. В свете этого, закладывать в свое приложение восстановление базы - затея сомнительная. Лучше в QA запускать RESTORE. Заодно, и прогресс-бар не понадобится.

_________
Свет в конце тоннеля временно потушен по техническим причинам.
Картинка с другого сайта.
Oyster
Дата: 02.12.2004 18:02:50
Не... без restore мне никуда. Ну надо и всё тут. Собссно часть функциональности приложения - управление MSSQL серверами, которые стоят в некой ЛС (т.ч. backup/restore/copy).
Sa
Дата: 04.12.2004 21:49:31
Отрицательно оношусь к различным затеям с progressами и другим контролем времени выполнения операций.
Как вариант набрать статистику времени выполнения restore. И давать приблизительную оценку, показывая что процесс живет.

uid = Sa
Oyster
Дата: 07.12.2004 16:25:05
Оказалось, что если использовать не SqlConnection (а, например, OleDbConnection), то всё чудесно работает :)
ziktuw
Дата: 08.12.2004 10:14:10
автор
Не... без restore мне никуда. Ну надо и всё тут. Собссно часть функциональности приложения - управление MSSQL серверами, которые стоят в некой ЛС (т.ч. backup/restore/copy).


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

_________
Свет в конце тоннеля временно потушен по техническим причинам.
Картинка с другого сайта.
ziktuw
Дата: 08.12.2004 10:16:19
автор
Оказалось, что если использовать не SqlConnection (а, например, OleDbConnection), то всё чудесно работает :)


Не обольщайся. Это до момента внедрения в эксплуатацию. А после - жди регулярных возмущенных звонков. Причины уже объяснены.

_________
Свет в конце тоннеля временно потушен по техническим причинам.
Картинка с другого сайта.