|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MSFT SQL Server - [решено] Обрезаем файл транзакций логов... |
|
MSFT SQL Server - [решено] Обрезаем файл транзакций логов...
|
Старожил Сообщения: 174 |
Профиль | Отправить PM | Цитировать Доброго времени суток! Последнее время, на некоторых корпоративных базах, на моем SQL Server 2000 сильно разрослись файлы транзакции логов. Вот и надумал их урезать: Свойства базы - Транзакции логов - Максимальный размер файла. Поставить там ограничение гектар на 10 (при условии, что сам файл данных весит 2,7 GB). Вообще, сейчас работает связка 1С8.0 - SQL Server 2000.
Вопрос следующий... Поскольку, я урезаю файл транзакции логов впервые, подкажите, нет ли там каких подводных камней или нюансов, которые необходимо знать. Сейчас размер файла транзакции логов (в одной из баз) равен 50 ГБ, порежу до 10 ГБ. Как долго будет идти процесс обрезания? Потребуется ли ребут SQL? Удалятся наиболее старые логи или не факт? Как вариант, рассматриваю переход на схему восстановления Simple. В этом случае логи всех завершенных транзакций должны автоматом делиться. Как долго будет идти процесс смены схемы восстановления? Заблочится ли база на это время? Потребуется ли ребут SQL? P.S. Умную книгу почитал, но такие нюансы освещены плохо. Спасибо. Жду авторитетных мнений. |
|
Отправлено: 16:22, 26-11-2007 |
Назгул Сообщения: 2633
|
Профиль | Отправить PM | Цитировать DoublE_zone,
1) Перед операцией застопте 1С, и вообще изгоните всех пользователей. 2) Сделайте Дамп базы - если что, вы поднимитесь с нее на любом сервере. 3) Пропорции Лог/Данные зависят от того какая у вас нагрузка. Транзакционная (OLTP) или хранилища данных (в основном идут массовые чтения). В 7.7 рекомендовалось соотношение один к двум. Плохо видно, за сколько лог файл вырос до 50 Гиг, но думаю рос он достаточно долго. Думаю вы можете ограничить Лог файл 2-мя Гигабайтами, правда еще вопрос какую политику архивации вы используете. Т.е. размера лог-файла должно хватать на операции между двумя полными архивированиями. Т.е. если вы полностью архивируетесь раз в неделю, то размер лог-файла нужно выбрать чтобы хватило на недельные операции (а лучше на две недели). Т.к. вы используете 32х битную систему, я бы рекомендовал выделять файлы данных под данные и логи размером в 2GB. Файлы лучше выделять вручную, т.е. откулючить авторасширение. |
------- Отправлено: 16:43, 26-11-2007 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 174
|
Профиль | Отправить PM | Цитировать kim-aa, спасибо. Как созрею - обязательно попробую.
|
Отправлено: 11:49, 27-11-2007 | #3 |
Старожил Сообщения: 174
|
Профиль | Отправить PM | Цитировать kim-aa, а какое действо наступает после выставления (урезания, сейчас 50Г - текущее, сделаю 10Г - max) файла транзакций логов и нажатия кнопки ОК? Файл сразу обрубится и освободит место на винтах или это длительный процесс? Нужно ли перезапускать SQL?
|
Отправлено: 10:58, 05-12-2007 | #4 |
Назгул Сообщения: 2633
|
Профиль | Отправить PM | Цитировать DoublE_zone,
По моему, сразу. Я ,честно говоря давно с MS SQL не работал, лет так восемь, и работал всегда с англоязычным окружением. По моему там это звучало как "Trunckate log" Операция выполняется немедленно. Просто отбрасываются старые операции. Что касаемо места на дисках, я убей бог не вспомню сейчас модель выделения места MS SQL в 2000. В MS SQL 6.x серии были устройства данных, это собственно сами файлы хранения или неформатированные сегменты диска. Сегменты данных и сегменты логов, размещались в устройствах данных. После обрезания сегмента логов, высвобождалось место в устройстве данных, но само файл устройства данных оставался прежним по размеру и изменить размер было возможно, но не всегда удобно (Expand, Shrink) Именно по этому есть рекомендации выдавать не одним файловым устройством, а кучей мелких по 2 GB (собственно так поступает Exchange, который суть изуродованный MS SQL) В 2000 вроде бы модель хранения лог-файлов изменили, однако раз они сжимались в старой модели, то должны сжиматься и вновой. По прежнему напоминаю, для избежания экцессов отключите все приложения от MS SQL перед операцией. Для надежности можете либо положить сетевой стек, либо просто выдернуть кабель из сервера (если вы работаете непосредственно на сервере) |
|
------- Последний раз редактировалось kim-aa, 05-12-2007 в 13:11. Отправлено: 12:57, 05-12-2007 | #5 |
Старожил Сообщения: 174
|
Профиль | Отправить PM | Цитировать kim-aa, было решено на ближайших регламентных работах перейти на всех базах на модель Simple. Сам SQL, когда его затачивал "профи" 1С (из конторы 1С, еще до меня), был сконфигурирован просто никак. Сейчас все эти проблемы и посыпались, при увелечении нагрузки. Полные бэкапы (без логов, только сами базы) сливаются каждую ночь.
Вопрос в следующем... Как отреагирует (и отреагирует ли вообще) 1С 8.0, который прикручен к моему SQL2000, на то, что я переведу модель Full на Simple (естественно, всех из 1С выгоню). Возможно, просто восстановлю базу из свежего Backup-а с тем же именем (предварительно снеся полностью старую) уже с пустым файлом логов. По книжкам, в теории, все просто и быстро, но что-то я ожидаю подводных камней.... Поможите дельным советом. |
Отправлено: 17:07, 18-12-2007 | #6 |
Назгул Сообщения: 2633
|
Профиль | Отправить PM | Цитировать DoublE_zone,
Не ведаю я, о отрок, терминологии MS-современной. В чем Full от Simple разнятся? Или это, суть 1С словеса диавольские? ---------------------------------------------------- Или ты про архивирование глаголешь? Коли эти уроды, кои Мастера MS SQL создавали, Богомерзким словом Full - полную выгрузку базы нарекают, а Simple это инкрементное резирвирование суть есть? |
------- Отправлено: 09:49, 19-12-2007 | #7 |
Новый участник Сообщения: 45
|
Профиль | Отправить PM | Цитировать На всяки случай атоттачь базу и скопируй лог и саму базу куданить, был както такой случай что после урезге лога база вобше никак не реагировала, говорит лог не тот и всё тут!
|
Отправлено: 11:00, 20-12-2007 | #8 |
Старожил Сообщения: 174
|
Профиль | Отправить PM | Цитировать kim-aa, не, немного не так. Имеется в виду модель восстановления (Recovery Model), которая может принимать значения Full, Bulk_logged, Simple. Full - все транзакции записываются и хранятся в журнале транзакций. Simple - журнал транзакций может автоматически усекаться, такое значение позволяет очищать журнал, когда транзакции завершились. То есть хранятся только незавершенные транзакции. Размер файла транзакций, в этом случае, как правило, не превышает гигабайта. Вот, что я имел ввиду.
|
Отправлено: 11:26, 20-12-2007 | #9 |
Назгул Сообщения: 2633
|
Профиль | Отправить PM | Цитировать DoublE_zone,
Ааа, понятно. Только если система у вас не высоконагруженная - я бы не связывался. Потому что MS SQL считает завершения по своим транзакциям, а вам важно сохранять транзакции уровня приложения - 1С, которая может состоять из кучи MS SQL-ских транзакций. В старых MS SQL я поступал вот как: - Измерял прирост сегмента логов (транзакций) за время равное двойным полным архивированиям. Т.е. если вы архивируетесь раз в неделю, то измерния прироста - за две недели. - Затем выставлял размер файла в данное значение и режим, не помню как называется, когда устаревшие транзакции стираются - новые записываются, а размер сохраняется. В некоторых SQL-серверах можно тупо указать временной диапазон - 2 недели и не мучатся. |
------- Отправлено: 13:29, 20-12-2007 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Службы - [решено] Координатор распределенных транзакций | __sa__nya | Microsoft Windows 2000/XP | 6 | 24-01-2021 11:21 | |
Разное - Поиск USB hubа с мультитрансляцией транзакций (Multi-TT) | skyfish | Прочее железо | 2 | 17-01-2010 14:49 | |
MSFT SQL Server - Процент заполненности файла журнала транзакций и журнал счетчиков | TywkaH4uk | Программирование и базы данных | 2 | 21-10-2008 14:39 | |
сервер не нестроен на выполнение транзакций | slaine | Сетевые технологии | 4 | 17-02-2006 11:25 | |
Проблема транзакций | phoner | Microsoft Windows NT/2000/2003 | 1 | 28-01-2006 13:35 |
|