Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу. / 9 сообщений из 9, страница 1 из 1
19.11.2018, 16:04
    #39735188
Vladimir_Mer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
Здравствуйте
Задача выглядит так: мне нужна последняя строчка возвращаемая после CheckDB, что бы передать ее пользователю. Для этого хочу результат записать в таблицу, а потом вывести эту строчку. На что мне сервер выдает ошибку. При этом если CheckDB без REPAIR_ALLOW_DATA_LOSS, то все отрабатывает как надо!

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
...
insert into #db_errors
exec ('DBCC CheckDB (''TempDB'',REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, TABLERESULTS')
...

Сообщение 8920, уровень 16, состояние 2, строка 1
Невозможно провести операцию checkdb внутри пользовательской транзакции. Прервите выполнение транзакции и заново запустите инструкцию.

Сообщение 7909, уровень 20, состояние 1, строка 1
Аварийное восстановление завершилось неудачно. Требуется восстановление из резервной копии.


Возможно есть какое то другое решение вопроса. Посоветуйте что нибудь.

Заранее благодарен!
...
Рейтинг: 0 / 0
19.11.2018, 16:12
    #39735195
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
Vladimir_Mer,
авторREPAIR_ALLOW_DATA_LOSS | REPAIR_FAST | REPAIR_REBUILD
Specifies that DBCC CHECKDB repair the found errors. Use the REPAIR options only as a last resort. The specified database must be in single-user mode to use one of the following repair options.

Код: sql
1.
ALTER DATABASE ...  SET single_USER;



Но выглядит такое желание странно да и вредно
...
Рейтинг: 0 / 0
19.11.2018, 16:25
    #39735202
Vladimir_Mer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
TaPaK, про переключение в одно пользовательский режим курсе. Я чтобы не захламлять кодом поставил "..."
...
Рейтинг: 0 / 0
19.11.2018, 16:26
    #39735205
Vladimir_Mer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
Решение найдено!

Код: sql
1.
2.
3.
4.
...
insert into #db_errors
exec sp_executesql N'DBCC CheckDB (''seawind'',REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, TABLERESULTS'
...
...
Рейтинг: 0 / 0
19.11.2018, 16:29
    #39735209
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
Vladimir_MerРешение найдено!

Код: sql
1.
2.
3.
4.
...
insert into #db_errors
exec sp_executesql N'DBCC CheckDB (''seawind'',REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, TABLERESULTS'
...


В Анекдоты запишем
...
Рейтинг: 0 / 0
19.11.2018, 16:35
    #39735219
Vladimir_Mer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
А нет, поторопился с выводами.(
работает только когда БД в режиме "онлайн", а в "Аварийном" не работает...
...
Рейтинг: 0 / 0
19.11.2018, 23:22
    #39735364
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
Vladimir_Merа в "Аварийном" не работает...Ошибка "не работаю"?
...
Рейтинг: 0 / 0
20.11.2018, 07:55
    #39735404
Vladimir_Mer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
alexeyvg,
Код: sql
1.
2.
3.
4.
5.
Сообщение 8920, уровень 16, состояние 2, строка 1
Невозможно провести операцию checkdb внутри пользовательской транзакции. Прервите выполнение транзакции и заново запустите инструкцию.

Сообщение 7909, уровень 20, состояние 1, строка 1
Аварийное восстановление завершилось неудачно. Требуется восстановление из резервной копии.
...
Рейтинг: 0 / 0
20.11.2018, 12:46
    #39735559
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу.
Vladimir_Mer,

Вы не с того конца зашли. Создайте приложение, которое выполнит DBCC CheckDB и покажет пользователю результат или сохранит его в файл. По-моему это можно сделать на любом скриптовом языке.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DBCC CheckDB с аргументом REPAIR_ALLOW_DATA_LOSS записать в таблицу. / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]