Если при разработке приложений не пользоваться хранимыми процедурами и параметризованными запросами, чем грешат большинство разработчиков, посылая произвольные (Adhoc) запросы серверу
То рано или поздно можно столкнуться с проблемой раздутого процедурного кэша.
EXECmaster.dbo.sp_configure'optimize for ad hoc workloads', 1
RECONFIGUREWITHOVERRIDE
GO
Использование этого параметра не очищает процедурный кэш, его очистку необходимо выполнить вручную, есть несколько вариантов: 1. — очистить весь процедурный кэш для экземпляра DBCC FREEPROCCACHE;
2. очистить для базы —Идентификатор базы DECLARE @intDBID INTEGER SET @intDBID = (SELECT dbid FROM master.dbo.sysdatabases WHERE name = 'IntegrationDB')
—select @intDBID —очищаем процедурный кэш для базы DBCC FLUSHPROCINDB (@intDBID)
3. удалить конкретные планы вручную — получаем указатель на план SELECT cp.plan_handle, st.[text] FROM sys.dm_exec_cached_plans AS cp CROSS APPLY sys.dm_exec_sql_text(plan_handle) AS st WHERE [text] LIKE N'%/* GetOnlineSearchResultsMonday %';
— удаляем план из кэша DBCC FREEPROCCACHE (0x05000800F7BA926C40C15055070000000000000000000000);
Параметр optimize for ad hoc workloads используется для повышения эффективности кэширования планов рабочих нагрузок, содержащих много отдельных нерегламентированных пакетов. Если этот параметр имеет значение 1, компонент Database Engine при первой компиляции пакета, сохраняет в кэше планов небольшую скомпилированную заглушку плана CompiledPlanStub, а не полный откомпилированный план. Это несколько снижает требования к памяти, так как кэш планов не заполняется скомпилированными, не используемыми повторно планами.
Скомпилированная заглушка плана принадлежит к объектам cacheobjtypes, которые можно просмотреть в представлении каталога sys.dm_exec_cached_plans. У каждой заглушки есть уникальный дескриптор SQL и дескриптор плана. Со скомпилированной заглушкой плана не связан план выполнения. Запрос по дескриптору плана не вернет XML-код Showplan
Для чего это надо ?
Каждая инструкция (T-SQL, SP и другие) сохраняет свой план выполнения в кэше, для дальнейшего использования. По этой причине, большое число планов хранится в системе и множество из них могут использоваться только 1 раз. Это в пустую тратит ресурсы сервера.
Чтобы не сохранялись в кэше планы запросов которые выолняются 1 раз придумали этот параметр сервера.
В загруженной системе легко может быть более миллиона разных инструкций, представьте сколько ресурсов вы тратите в пустую. Благодаря параметру optimize for ad hoc workloads можно избежать хранения ненужных планов.
Если посмотреть на результаты внизу после включения опции optimize for ad hoc workloads можно у
При работе с Windows Server 2008 R2 в удаленном сеансе по умолчанию отсутствует возможность изменения размера шрифта. Что приносит множество неудобств людям с ограниченными возможностями, например, людям со слабым зрением. В этом посте рассказывается, как разблокировать данную возможность. Настройки по умолчанию:
Исправление, позволяющее разблокировать данную функцию, доступно для загрузки на странице поддержки Microsoft по адресу https://support.microsoft.com/kb/2726399/en-us. После установки данного исправления и перезапуска сервера пользователи получают возможность менять размер текста в удаленном сеансе.
С каждой новой версией продукта от Microsoft пользователи, да чего уже там даже системные администраторы/ИТ-инженера/ и прочие причастные к этому миру ждут, что новая версия будет более лучше работать, и перестанет сыпать непонятными ошибками. Или, по крайней мере, научится решать ошибки, которые возникали в ранних продуктах. Но нет.
И так сегодня осветим пару “старых” ошибок, которые возникают при установке нового MS SQL 2012.
При возникновении необходимости обновления большого количества однотипных баз 1С существует возможность использования пакетного режима запуска исполняемого файла с передачей определенных параметров. В этом режиме можно запускать исполняемый файл на обновление информационной базы.
Данная статья в первую очередь предназначена для людей, которые желают познакомиться с операционными системами семейства GNU/Linux, но имеют опыт работы только в Windows.
Обоснование выбора
Virtualbox — популярный программный продукт виртуализации для множества операционных систем. Бесплатен, стабилен. Использовался мной на 2 ПК и 3 ноутбуках. Проблем не возникало.
Kubuntu — операционная система, которая является сборкой Ubuntu со средой KDE. Часто критикуется за «прожорливость», но по в любом случае среди всех оболочек наиболее схожа с рабочим столом Windows, а также имеет много графических средств для настройки. Таким образом, имея опыт работы в Windows, разобраться и настроить KDE не составит труда.
Альтернатива Kubuntu — Linux Mint KDE.
Загрузка компонентов
Для установки Virtualbox нужно перейти на эту страницу: https://www.virtualbox.org/wiki/Downloads. Напротив строки VirtualBox 4.3.12 for Windows hosts нужно нажать на ссылку x86/amd64, а напротив VirtualBox 4.3.12 Oracle VM VirtualBox Extension Pack — All supported platforms. Запустите сначала первый файл, а после завершения установки — второй.
Примечание: для увеличения скриншота кликните по нему.
Запустите Virtualbox и выберите кнопку «Создать».
В открывшемся диалоговом окне введите имя создаваемой виртуальной машины. Тип — Linux, версия — Ubuntu.
Благодаря данному выбору дальнейшие параметры будут автоматически настраиваться под убунту. У Вас они скорее всего по умолчанию такие же. В любом случае стоит сверяться со скриншотами ниже.
Оперативной памяти можно выделить сколько угодно, но оптимальнее всего будет 512 МБ. Если спустя некоторое время Вы решите запускать ресурсоемкие приложения, то данный параметр нужно будет увеличить до 1 — 2 ГБ. Но его можно менять в любое время, так что пока советую выбрать 512 МБ.
Так как виртуального жесткого диска пока нет, соглашайтесь на его создание.
Тип можно выбрать любой, но при работе с Virtualbox лучше выбрать и диск Virtualbox.
Потом следует выбрать формат хранения. Динамический будет увеличиваться в размере постепенно, а статический сразу займет все отведенное для него пространство. Первый экономит место, а второй чуть быстрее работает. Выбирать Вам. Я всегда выбираю динамический, так как у меня много виртуальных машин и нужно экономить место 🙂
А вот теперь пора определиться с размером. Мастер предлагает 8 ГБ, но этого маловато для работы. Познакомиться с системой хватит, но не более того. А вот 16 ГБ уже лучше. Особенно если на предыдущем шаге был выбран динамический тип.
Настройка виртуальной машины
Выберите созданную машину и нажмите на кнопку «Настроить».
Нужно изменить всего пару параметров.
Первый расположен в Система -> Материнская плата. Уберите дискету из списка Порядок загрузки.
Далее перейдите в Дисплей -> Видео. Отдайте 128 МБ видеопамяти и поставьте галочку напротив строки «Включить 3D ускорение». Увы, но без этого KDE работает крайне плохо.
Установка Kubuntu
Дважды кликните по названию виртуальной машины. В открывшемся диалоговом окне нажмите на кнопку в виде папки (напротив строки Привод хоста).
Далее найдите на диске образ Kubuntu.
После того, как Virtualbox обнаружит образ, его имя отобразится в предыдущем диалоговом окне. Нажмите «Продолжить».
Итак, загрузилось меню LiveCD:
Нажмите клавишу F2 и стрелками выберите русский язык из списка.
Пункт «Запустить Kubuntu» уже активен. Просто нажмите Enter.
Итак, спустя некоторое время система загрузилась. Можно либо поработать с ней в Live-режиме, либо установить. Выберите п