Попытался сделать alter column для огромной таблицы в 100 гигабайт. было свободно 150 гиг, потому решил рикунуть. Через минут 40 место кончилось, но запрос продолжал выполнятся. Подождал полчаса и нажал cancel. крутилось rollback часа 3, посмотрел что файлы базы не обновлялись час, т.е. никакого возобновления не протсходит, потому сделал ребут.
Сейчас пишет в recovery mode, но нагугленый скрипт пишет, что прогресс 0% и файлы на диске полчаса не меняются.
в общем вопрос - что делать?
ms sql in recovery mode
-
- Уже с Приветом
- Posts: 38016
- Joined: 14 Dec 2006 20:13
- Location: USA
Re: ms sql in recovery mode
Ждать. ВОзможно, часов 20 - 30. Вообще то еще рекомендуется места добавить. Для логов.
(Ах, у вас не виртуалка? Ну тогда извините...)
(Ах, у вас не виртуалка? Ну тогда извините...)
-
- Уже с Приветом
- Posts: 15770
- Joined: 01 Mar 2008 15:14
Re: ms sql in recovery mode
отбой, чуть подождал и пошло. Диск итак на 500 гиг ssd под базу
-
- Уже с Приветом
- Posts: 15311
- Joined: 30 Apr 2003 16:43
Re: ms sql in recovery mode
А о чем был алтер, интересно?
-
- Уже с Приветом
- Posts: 15770
- Joined: 01 Mar 2008 15:14
Re: ms sql in recovery mode
money поменять на number - точности не хватает
-
- Уже с Приветом
- Posts: 15311
- Joined: 30 Apr 2003 16:43
Re: ms sql in recovery mode
Насколько я помню в DB2 это вызвало бы перевод таблицы в restricted status, который в свою очередь должен был быть разрешен через утилиту реогранизации, которая работает через разгрузку данных с последущей загрузкой в новую структуру. Я по памяти пишу, за точность сильно не ручаюсь, просто для поддержки разговора. Кстати, все у Вас закончилось нормально?
-
- Уже с Приветом
- Posts: 7723
- Joined: 29 Mar 2000 10:01
- Location: Kirkland,WA
Re: ms sql in recovery mode
Правило трёх не:
1). Не начинайте то что вы не знаете когда закончится - хотя бы оценить на салфетке худший вариант.
2). Не вырубайте команду котороя сама по ошибке не вырубилась если вы боитесь что это слишком долго - обычно откат годаздо длиннее.
3). Не рестартуйте базу если вы не понимаете как точно работает рековери .
1). Не начинайте то что вы не знаете когда закончится - хотя бы оценить на салфетке худший вариант.
2). Не вырубайте команду котороя сама по ошибке не вырубилась если вы боитесь что это слишком долго - обычно откат годаздо длиннее.
3). Не рестартуйте базу если вы не понимаете как точно работает рековери .
-
- Уже с Приветом
- Posts: 15770
- Joined: 01 Mar 2008 15:14
Re: ms sql in recovery mode
да, нормально
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: ms sql in recovery mode
На будущее
Прогресс рековери в процентах виден в логе
Прогресс рековери в процентах виден в логе
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: ms sql in recovery mode
И еще на будущее.
Так как с файлами MS SQL работает на более низком уровне, метка файловой системы о времени последнего доступа некорректна и не обновляется MS SQL. Часто это просто время открытия файла, то есть старта MS SQL
Так как с файлами MS SQL работает на более низком уровне, метка файловой системы о времени последнего доступа некорректна и не обновляется MS SQL. Часто это просто время открытия файла, то есть старта MS SQL
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 15770
- Joined: 01 Mar 2008 15:14
Re: ms sql in recovery mode
в логах было написано ждать 100500 часов и прогресс 0%, который стоял полчаса, что и смутило. Место на диске тоже не менялось
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: ms sql in recovery mode
Часто перелить быстрее в таких случаях, когда изменяются типы или изменяется физическая длина
Добавление новых null колонок или изменение размера varchar к этому не относится
Но если вы добавите новую колонку null, что произойдет почти мгновенно, а потом пойдете по ней update, заполняя значения, то снова можете столкнуться с ситуацией, когда перелив быстрее
Добавление новых null колонок или изменение размера varchar к этому не относится
Но если вы добавите новую колонку null, что произойдет почти мгновенно, а потом пойдете по ней update, заполняя значения, то снова можете столкнуться с ситуацией, когда перелив быстрее
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 15770
- Joined: 01 Mar 2008 15:14
Re: ms sql in recovery mode
да думаю придется перелив, причем не разом, а частями