Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Проблемы с обслуживанием SQL базы 1с.
С SQl плотно сталкнулся впервые -поэтому заранее приношу
извинения за свои "туповатые" описания и вопросы.
Имеется:
Сервер 2008 SP2 64разр. ,Xeon X3430, оперативки 8гб
SQL сервер 2008.(10.0.1600.22) Ограничение на использование память SQL сервером=4Гб.
Состояние базы до начала всех действий по оптимизации:
Моднель восстановления =Полная
Объем MDF=17,8ГБ(Авторасширение =1Мб, рост не ограничен);
LDF=1,5ГБ.(Авторасширение =10%, рост ограничен до 2 097 152 Мб);

Пользователи жаловатся начали на тормоза работы в 1с. Так как база почти стандартная УТ,
решил начать с оптимизации работы SQL,т.к. на нем вообще никаких регламентных
заданий не проводилось с рождения.
Начитался информации (продолжаю её "употреблять"). В результате ,что задумал -сделать
план обслуживания по бэкапированию базы данных и проведения рег. операции (обновление статистики,
операция DBCC FREEPROCCACHE, реорганизация индекса, перестроение индексов, удаление старых архивов).
Что сделал и что имеем на данный момент:
в Microsoft SQL Server Management Studio создал один план обслуживания -BackUp1c.
В нем создал 2 вложенных плана
1.BackUp1c_daily
2.BackUp1c_Week

Далее по шагам подчинения (связи) перечислю, что создал в каждом субплане.
1.BackUp1c_daily (расписание каждый день в 3 часа ночи, кроме субботы)
1.1. Резервное копирование базы данных.(бэкап файла данных -тип резервной копии -Полный)
1.2 Резервное копирование базы данных1.(бэкап журнала транзакции).
1.3. Обновление статистики (вся статистика , полный просмотр)
1.4. Выполнение инструкции DBCC FREEPROCCACHE
1.5. Реорганизация индексов (стоит галка "Сжатие больших объемов")
1.6. Очистка после обслуживания (удаление файлов бэкапа старше 3 дней- много места занимают )

2.BackUp1c_Week(расписание каждую субботу 3 часа ночи)
2.1. Резервное копирование базы данных.(бэкап файла данных -тип резервной копии -Полный)
2.2. Перестроение индекса (Реорганизовать страницы использованием объема свободного места по умолчанию =1)
Все это в Агенте SQl сервера висит. Дополнительно висит созданное не мной задание:
имя - syspolicy_purge_history
ШАги:
1. Verify that automation is enabled.
Команда:
IF (msdb.dbo.fn_syspolicy_is_automation_enabled() != 1)
BEGIN
RAISERROR(34022, 16, 1)
END

2.Purge history.
Команда:
EXEC msdb.dbo.sp_syspolicy_purge_history
3.Erase Phantom System Health Records.
Команда:
(Get-Item SQLSERVER:\SQLPolicy\DSQ\DEFAULT).EraseSystemHealthPhantomRecords()
Смысл последнего задания (не моего) -понял очень приблизительно (если кто расшифрует подробно -буду
благодарен)-удаляет ошибки и фантомные записи.

Теперь результат:
запускал субпланы в рабочее время -проверял работет или нет.
Запустил первый субплан -крутилось минут 15-20 все. Итог -MDF=18,8ГБ, LDF=22ГБ.
Запуси второй субплан -крутилось минут 10-15 все. Итог -MDF=18,8ГБ, LDF=45,6 ГБ.
в итоге лог не растет, но в бэкап уходит целиком 44,8 гб.
Как я понял из прочитанного операцию shrink logа делать не нужно (не реомендуется?)

Вопросы: 1.Что мне исправить в конфигурации SQL сервера, для улучшения работы и быстродействия?
2. Каков порядок операции обслуживаиня должен быть (и правильно ли я поставил их очередность).
3. Почему так вырос лог файл?
4. Как уменьшить его и в дальнейшем не давать ему расти?
5. Какие еще шаги должны быть для увеличения быстродействия сервера ?
Желательно конечно с пояснениями - хочу понимать что делаю и зачем.
Заранее спасибо за ответы и рекомендации
25 май 12, 00:31    [12611566]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Для информации : Сегодня ночью бэкап журнала стал 19,9ГБ. Сам журнал так и остался 45 гб.
25 май 12, 09:55    [12612485]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
vdv77
Авторасширение =1Мб
Ой-ой.
vdv77
(бэкап журнала транзакции)
Зачем вам полная модель, если вы бэкап лога делаете всместе с полным бэкапом?
vdv77
Выполнение инструкции DBCC FREEPROCCACHE
Зачем?
vdv77
в итоге лог не растет, но в бэкап уходит целиком 44,8 гб.
Вы бэкап в один файл делаете что ли?
vdv77
1.Что мне исправить в конфигурации SQL сервера, для улучшения работы и быстродействия?
...
5. Какие еще шаги должны быть для увеличения быстродействия сервера ?
Как настраивать MSSQL, чтобы на нем быстро работала 1с, лучше спрашивать в форуме https://www.sql.ru/forum/actualtopics.aspx?bid=63
автор
3. Почему так вырос лог файл?
Потому что "2.2. Перестроение индекса (Реорганизовать страницы использованием объема свободного места по умолчанию =1)"
автор
4. Как уменьшить его...
Командой shrink.
автор
...и в дальнейшем не давать ему расти?
Не выполнять "2.2. Перестроение индекса (Реорганизовать страницы использованием объема свободного места по умолчанию =1)". Либо ограничить рост файла лога - тогда перестроение отвалится само. Либо бэкапить лог быстрее, чем он заполняется.
25 май 12, 10:08    [12612600]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Гавриленко Сергей Алексеевич,
Изначально отталкивался от описания плана обслуживания, который нашел на 1с сайтах.
Там все мои шаги описаны как обязательные. Только с последовательностью шагов -толком не нашел порядок.
бэкап журнала транзакции делаю только исключительно для его уменьшения (он же вроде как должен уменьшится при этой операции?)
Вы бэкап в один файл делаете что ли? - не понял, какая разница сколько файлов-у меня есть полный бэкап базы,бэкап лога для его свертки (усечения?).
чем плох шаг 2.2 Перестроение индекса (Реорганизовать страницы использованием объема свободного места по умолчанию =1)
можно объяснить (для собственного образования)?
Командой shrink использовать пока не хочу -почитал на форумах что это -очень крайняя и затратная по ресурсам мера. Опять же если лог снова вырастет-нужно понимать причины роста и с ними бороться.
по ссылке-спасибо- схожу почитаю, но возможные рекомендации по исправлению моей ситуации все равно буду ждать в этой теме
25 май 12, 10:32    [12612925]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
перестаньте перестраивать индексы и журнал транзакций перестанет расти.
вообще какой смысл перестраивать их постоянно?
shrink сделать один раз будет достаточно, когда разберетесь(поймете) что именно и зачем вы делаете. :)
статитику вот надо собирать, но опять же частота ее сбора зависит от того насколько часто у вас заливаются или меняются большие объемы данных.
28 май 12, 08:14    [12623622]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Дмитрий_sql
Member

Откуда:
Сообщений: 35
Профайлером посмотри, что за запросы выполняют пользователи. Может индексов нехватает.
Или руки пользователям... чтоб не грузили сервер.

P.S. Обычно самое узкое место это операции ввода-вывода. Оптимизируй большие запросы и пользователи будут рады.

Так же можно раскидать файлы базы и лога на разные диски. Это на много повысит быстродействие.
Так же любое перестроение индексов отображается в логе. Так что не удивляйся, что он вырос больше размера базы.
28 май 12, 11:17    [12624568]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Сегодня ночью сделался бэкап лог, в архиве весит 11,3 Гб (пошел на уменьшение). Сам журнал так и остался 45 Гб.
Сейчас подключил к бэкапированию еще пару баз (небольших по 200-300 мб) -ситуация почти одинаковая, сначала бэкап лога весил 1,мб, теперь 8,9мб. развернутый лог -76мб.
Сделаю shrink, хотя все равно хотелось бы понимать -почему так вырос лог. Отсюда вопрос: по указанным мною операциям где можно подробно почитать (если есть - с примерами). На форуме читаю -каждый советует что то своё, иногда мнения диаметрально противоположные.
И пока прироста скорости работы в 1с не видно. Возможно дело и не в SQLнастройках, но все равно буду настраивать до по победного конца (либо я его , либо он меня)
28 май 12, 14:49    [12626109]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
вам же говорят. либю забейте на логи, либо перестаньте бездумно перестраивать индексы только потому что так пишут в интернете. Вообще прежде чем заняться тюнингом производительности, неплохо сначала немного вникнуть в концепции.
При перестроении индексов в БД происходят изменения, эти изменения и фиксируются в логах. Т.к. для перестроения индексов приходится перестраивать большие таблицы, отттуда и объемы. Немного упрощенно написал.
Попробуйте отказаться от перестроения и посмотрите станет ли хуже.
Дело в 90% случаев тормозов не в индексах и даже не СУБД, а в кривом приложении. Смотрите запросы, которые выполняются, берите планы и анализируйте их, если не хватает, то стройте индексы и опять смотрите планы. Вообще для начала посмотрите где затык, в CPU или IO, потом оттуда и пляшите.
28 май 12, 15:48    [12626631]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
"в логах" - читать в "журналах транзакций"
чтоб в меня тапки не полетели :)
28 май 12, 15:50    [12626653]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Stan2000,
А Реорганизация индексов оставить можно?
Перестроение индекса -убрал.
Сейчас попробовал сделать дневной Бэкап при работающих пользователях по плану:
1.1. Резервное копирование базы данных.(бэкап файла данных -тип резервной копии -Полный)
1.2 Резервное копирование базы данных1.(бэкап журнала транзакции).
1.3. Обновление статистики (вся статистика , полный просмотр)
1.4. Выполнение инструкции DBCC FREEPROCCACHE
1.5. Реорганизация индексов (стоит галка "Сжатие больших объемов")
1.6. Очистка после обслуживания (удаление файлов бэкапа старше 3 дней- много места занимают )

Архив Лога вырос с 11,3 до 26 ГБ.
И еще вопрос: Бэкап журнала транзакции должен его урезать (как я понимаю). Если я сначала сделаю все операции по приведенному плану, а в конце Бэкап журнала транзакции -он у меня уменьшится?
28 май 12, 16:19    [12626923]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
SamMan
Member

Откуда: Moscow
Сообщений: 759
vdv77
Бэкап журнала транзакции должен его урезать (как я понимаю)


Если есть хоть малейшая (с т.з. обеспечения целостности данных) возможность провести урезание - бэкап его выполняет.

vdv77
Если я сначала сделаю все операции по приведенному плану, а в конце Бэкап журнала транзакции -он у меня уменьшится?


См. п.1, т.е. если ничего препятствовать не будет - уменьшится.
28 май 12, 18:57    [12627988]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
SamMan
Member

Откуда: Moscow
Сообщений: 759
Прошу пардону - все слова "урезать" в моем предыдущем ответе следует заменить на "усекать". Для совершенно точного соответствия BOL-у. Вот тогда мой ответ будет совсем корректным.
28 май 12, 19:48    [12628178]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
vdv77, что вы так за эти индексы уцепились???? :)
не в них дело.
вам стратегию уже сказали:
1. ищете в какое время тормозит и как. на что именно жалуются пользователи.
2. смотрите загрузку процессора и системы ввода-вывода. отмечаете себе в чем затык.
3. смотрите какие операции в это время происходят с базой.
4. находите проблему и решаете ее или тут озвучиваете.
29 май 12, 07:16    [12629142]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
ну и чтоб вам было понятней приведу аналогию, вашего сообщения безотносительно БД:
Здравствуйте!
У меня машина Ленд крузер Прадо 2006 г.в., кожа, автомат, климат, 8 подушек безопасности.
пассажиры говорят, что-то едет она плохо. раньше лучше ездила.
Прочитал тут на форуме владельцев ленд крузеров, что если менять свечи чаще то едет лучше. Кому-то это помогло.
Сейчас каждое утро покупаю и меняю свечи на новые иридиевые, но вот проблема, денег почему-то много уходит. как с этим бороться?

примерно как-то так :)
29 май 12, 09:14    [12629458]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Вчера вечером сделал операцию shrink целиком базе данных. Результат: файл базы данных уменьшился на 200 мб ,файл журнала транзакциис 45 гб уменьшился до 32 Гб. Дальше shrink на это файл уже не действовал на уменьшение объема. Ночью бэкап произвел по плану выше приведенному, только бэкап журнала транзакции переставил самой последней операцией. Результат: журнал транзакции вырос до 47 Гб, архив его занимает столько же сколько и сам файл 47 ГБ. Я плохо понимаю что он делает, может кто объснит , с чем это связано.
29 май 12, 09:29    [12629543]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
vdv77, вы определись для начала у вас проблемы с местом или производительностью :)
еще раз про машины:
вчера заехал на сто, разобрали и собрали весь автомобиль из этих же запчастей заново. отдал за это 47 тысяч баксов.
автомобиль начал весить на 200 килограмм меньше.
почему так много денег уходит не пойму.

http://msdn.microsoft.com/en-us/library/ms189035.aspx
читать до просветления :)
29 май 12, 09:39    [12629622]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Stan2000,
Я понимаю, что не все о чем говорят на форумах нужно принимать к сведению. Те положения которыми я руководствовался, взяты с 1с-ких форумов, люди котором шаги сделанные мною реально помогли. Поэтому взял их за основу.
Просто в моем понимании файл журнала транзакции не может так резко расти за 1 операцию обслуживания, что-то ведь туда попадает. И это что-то -результат какой либо работы SQL, которая все равно так или иначе влияет быстродействие работы. (это я так считаю, может не прав- поправьте). И хочу иметь точное понимание-что так забивает журнал транзакции, что бы предпринимать
какие либо действия по оптимизации уже в ПО 1с. Как просмотреть средствами SQL , что конкретно находится журнала транзакции -не знаю.
Про машину пример хороший.
Ссылку читать буду
Спасибо всем за проявленное терпение, дальше буду смотреть что происходит с базой
29 май 12, 13:02    [12631214]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
vdv77, буду говрить, грубо, может не совсем правильно, но чтоб понятней было :)
если вы все индексы перестраиваете в базе, то в журнал транзакций изменения перестроения каждого индекса, каждой таблицы записываются. грубо(и не совсем правильно) сколько весят ваши индексы, которые перестраиваете, столько примерно и будет в логах после каждого перестроения. Берется блок данных(индекса), переносится в другое место, чтобы быть упорядоченным, это изменение записывается в журнал и т.д. пока все не переберет. И все это записывается в журнал.
Это сделано для того, чтобы вы могли восстановить БД на любой момент времени в ее состояние на этот момент. С момента полного бэкапа до настоящего момента. Если снова делаете полный бэкап, то журналы становятся уже не нужны, т.к. БД фиксируется на этот момент и они усекаются.
Если не учитывать всякие "танцы с бубнами", типа перестроения индексов, то чем чаще делаете полные бэкапы, меньше журналы.
Ну и еще раз о перестроении:
Вы наверное не совсем понимаете зачем оно нужно. Оно нужно когда данные сильно фрагментированы в файле данных. Как фрагментация файлов на дисковой системе. Если в табилцу вносится постонно много изменений, меняются старые данные, удаляются, добавляются, то со временем, блоки данных фрагментируются их надо перераспределять, чтобы при запросах читалось сразу несколько нужных блоков за один проход головки винчестера, а не читать несколько раз с разных мест, что существенно замедляет ввод-вывод.
Если в курсе что такое фрагментация, то поймете. Если нет, то поищите в интернете хоть про файловые системы, подход одинаковый.
Если знаете что это такое, то тогда вопрос, делаете ли дефрагментацию своего жесткого диска каждый день на рабочем компьютере?
Так и тут.
29 май 12, 15:34    [12632453]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
профи поправят если что не правильно сказал :)
29 май 12, 15:36    [12632463]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
vdv77, сам тока 3 месяца как MSSQL начал изучать, по долгу службы. До этого с Ораклом только работал. Но принципы одинаковые.
Пока книги и доку не почитал базу не трогал.
29 май 12, 15:43    [12632504]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Kirillich
Member

Откуда:
Сообщений: 581
Stan2000
vdv77, сам тока 3 месяца как MSSQL начал изучать, по долгу службы. До этого с Ораклом только работал. Но принципы одинаковые.
Пока книги и доку не почитал базу не трогал.

почитай, полезно будет.
"то чем чаще делаете полные бэкапы, меньше журналы" - не прав ты тут.

2 ТС
а вам нужна полная модель восстановления?
29 май 12, 16:01    [12632657]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
vdv77
Member

Откуда:
Сообщений: 17
Stan2000,
перестроение -убрал, оставил реорганизацию индексов.
Все таки не понятно, если у меня BackUp Log стоит последней операцией в плане обслуживания -почему он не обрезается? Вроде по синтаксису должен уменьшаться
29 май 12, 16:12    [12632776]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Ozerov
Member

Откуда: Москва
Сообщений: 3637
vdv77
Stan2000,
перестроение -убрал, оставил реорганизацию индексов.
Все таки не понятно, если у меня BackUp Log стоит последней операцией в плане обслуживания -почему он не обрезается? Вроде по синтаксису должен уменьшаться


BackUp Log не обрезает, он очищает.
29 май 12, 16:29    [12632924]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Blackfil
Member

Откуда:
Сообщений: 15
vdv77, советую вам для начала разобраться с теорией, а потом переходить к практике

http://www.sqlcmd.ru/trans_log_internals-part01.html
http://www.sqlcmd.ru/various_backups-part01.html
30 май 12, 09:03    [12635154]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с обслуживанием SQL базы 1с. (я делаю это в первый раз)  [new]
Stan2000
Member

Откуда: California
Сообщений: 1827
Kirillich
Stan2000
vdv77, сам тока 3 месяца как MSSQL начал изучать, по долгу службы. До этого с Ораклом только работал. Но принципы одинаковые.
Пока книги и доку не почитал базу не трогал.

почитай, полезно будет.
"то чем чаще делаете полные бэкапы, меньше журналы" - не прав ты тут.

Это образно, для общего случая.
Я имел ввиду в БД с большим количеством транзакций, если полный бэкап БД и журналов делается 1 раз в 2 дня, и потом сделать его раз день, то появится возможность уменьшить файлы логов транзакций методом усечения, т.к. транзакций в них будет записано меньше в 2 раза. и появится возможность сократить их.
30 май 12, 09:53    [12635408]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить