1с настройка sql для 1с
Сервер "1С:Предприятия" и SQL-сервер
В данном разделе рассмотрены особенности настройки SQL-сервера для обеспечения взаимодействия сервера "1С:Предприятия 8" с SQL-сервером. Напомним, что в качестве SQL-сервера предполагается использовать Microsoft SQL Server 2000 с установленным Service Pack 2 или Microsoft SQL Server 2005. Далее по тексту под SQL-сервером будем понимать именно этот продукт. Поскольку использование "1С:Предприятия 8" в варианте "клиент-сервер" подразумевает хранение данных в SQL-сервере, для безошибочной работы "1С:Предприятия 8" необходимо уделить внимание следующим вопросам:
- распределение SQL-сервера и сервера "1С:Предприятия" по компьютерам;
- проверка наличия и версии SQL-сервера и компонента доступа к данным;
- выбор протокола передачи данных между сервером "1С:Предприятия" и SQL-сервером;
- настройка прав пользователя сервера "1С:Предприятия 8".
Рассмотрим подробнее каждый из перечисленных вопросов.
Распределение SQL-сервера и сервера "1С:Предприятия" по компьютерам
SQL-сервер и сервер "1С:Предприятия 8" могут быть установлены как на одном компьютере, так и на разных компьютерах, в зависимости от предполагаемой загрузки (см. руководство: "1С:Предприятие 8. Клиент-сервер. Особенности установки и использования"). Сервер "1С:Предприятия 8" взаимодействует с SQL-сервером через специальный компонент доступа к данным - Microsoft OLE DB Provider for SQL Server, входящий в состав Microsoft Data Access (MDAC), который, в свою очередь, взаимодействует с SQL-сервером либо непосредственно, если SQL-сервер установлен на том же компьютере, что и сервер "1С:Предприятия", либо через некоторый протокол передачи данных, если SQL-сервер и сервер "1С:Предприятия" установлены на разных компьютерах.
Проверка наличия и версий SQL-сервера и компонента доступа к данным
Для нормальной работы сервера "1С:Предприятия 8" необходимо, чтобы на компьютере, на котором установлен сервер "1С:Предприятия", присутствовал компонент Microsoft OLE DB Provider for SQL Server, который обычно входит в состав операционной системы Microsoft Windows 2000 и более новых и расположен в файле C:\Program Files\Common Files\System\OLE DB\sqloledb.dll. Маршрут используемого файла sqloledb.dll можно посмотреть в ветке
HKEY_CLASSES_ROOT\CLSID\\InprocServer32
системного реестра. Чтобы узнать его версию, необходимо открыть закладку Versions диалога свойств этого файла. Версия должна быть 08.10.9030 или более поздняя. Если это не так, то необходимо установить клиентские компоненты Microsoft SQL Server. Он также входит в состав Microsoft Data Access 2.6. Еще необходимо обратить внимание на файл C:\WINNT\system32\ntwdblib.dll, который должен иметь версию 8.00.194 или более позднюю.
В качестве SQL-сервера должен использоваться Microsoft SQL Server 2000 с установленным Service Pack 2 или Microsoft SQL Server 2005. Проверить версию SQL-сервера можно при помощи утилиты Enterprise Manager, входящей в комплект SQL-сервера. Запустите ее на компьютере, на котором установлен SQL-сервер, выберите ветку Console Root -> Microsoft SQL Servers -> SQL Server Group -> (Local), откройте окно ее свойств и на закладке General обратите внимание на строку Product version. Должна быть версия 8.00.534(SP2) или более поздняя. Если это не так, установите Microsoft SQL Server 2000 Service Pack 2 или Microsoft SQL Server 2005.
Выбор протокола передачи данных между сервером "1С:Предприятия" и SQL-сервером
Если сервер "1С:Предприятия" и SQL-сервер установлены на разных компьютерах, то передача данных осуществляется посредством сетевого протокола. Установки сетевых протоколов на SQL-сервере и у компонентов доступа к данным должны быть согласованы между собой. Для установки сетевых протоколов на SQL-сервере можно воспользоваться утилитой SQL Server Network Utility. Ее загрузочный модуль обычно находится в файле "C:\Program Files\Microsoft SQL Server\80\Tools\Binn\svrnetcn.exe". Эта утилита отображает диалог, в котором на закладке General представлен список включенных и выключенных протоколов. Для надежной работы "1С:Предприятия 8" рекомендуется включить протокол TCP/IP (первой строкой) и Named Pipes (второй строкой) и выключить все остальные протоколы.
Компьютер, на котором установлен сервер "1С:Предприятия", является по отношению к SQL-серверу клиентом, и для определения его сетевых протоколов воспользуйтесь утилитой SQL Server Client Network Utility. Ее загрузочный модуль обычно находится в файле "C:\WINNT\system32\cliconfg.exe". Она отображает диалог, в котором на закладке General представлен список включенных и выключенных протоколов. Рекомендуется использовать протокол TCP/IP, поскольку это исключает дополнительные проблемы с настройкой системы безопасности Windows и обеспечивает наибольшую производительность системы. Остальные протоколы лучше выключить. Обратите внимание на закладку Alias. Упоминание на ней имени используемого "1С:Предприятием" SQL-сервера может изменить выбранный сетевой протокол и привести к неожиданным эффектам.
Настройка прав пользователя сервера "1С:Предприятия 8"
Для повышения гибкости настройки прав рекомендуется использовать SQL Server Authentication.
Перед созданием первой информационной базы выполните следующие настройки. Запустите утилиту Enterprise Manager, входящей в комплект SQL-сервера, выберите ветку Console Root -> Microsoft SQL Servers -> SQL Server Group -> (Local), откройте окно ее свойств. На закладке Security переключатель Authentication установите в положение SQL Server and Windows и нажмите Ok. Выберите ветку Console Root -> Microsoft SQL Servers -> SQL Server Group -> (Local) -> Security -> Logins. Создайте учетную запись, имя и пароль, которой вы будете задавать в качестве имени и пароля пользователя SQL при создании информационной базы (Локальное Меню -> New Login. ). На закладке General отображенного диалога: в строке Name задайте имя пользователя; переключатель Authentication установите на SQL Server Authentication и задайте пароль пользователя; укажите master в качестве Default Database. На закладке Server Roles включите роль Database Creators, а на закладке Database Access найдите базу данных master и включите для нее роль public. После этого информационную базу можно создавать.
После создания информационной базы эта учетная запись станет собственником созданной базы данных и будет иметь возможность чтения данных из системных таблиц базы данных master, что и требуется для нормальной работы сервера "1С:Предприятия". От имени этой учетной записи могут быть созданы и другие базы данных. Если это нежелательно, то в свойствах рассматриваемой учетной записи на SQL-сервере на закладке Server Roles роль Database Creators можно выключить. Более подробную информацию по администрированию SQL-сервера можно найти в документации к Miсrosoft SQL Server.
А почему не выложить здесь как публикацию?
(2) AnryMc, Я подумывал выложить публикацией когда документ примет более окончательный вид, там еще много работы, чем я и щас занимаюсь )
Народ, скажите кому понравилось и кто что хочет еще видеть в документе.
(1) LastSoldier, Из того что сразу бросилось в глаза:
1. Добавить описание дополнительных настроек MS SQL, таких как максимальная степень параллелизма, стоимостной порог параллелизма, оптимизация для не регламентированной нагрузки и т.п..
2. Раздел про создание и настройку новой базы удалить и заменить на настройку параметров создания новой базы по "умолчанию", таких как "начальный размер", "автоувеличение", модель восстановления и т.п..
3. Добавить описание флагов трассировки, таких как -T1118 и -T4199 (для MS SQL 2014 с 1С обязателен).
4. Добавить рекомендации по настройке TempDB.
5. Добавить ссылку на публикацию по настройке планов обслуживания.
6. Добавить ссылку на публикацию описывающую настройку резервного копирования.
7. Добавить ссылку на публикацию содержащую примеры полезных скриптов по настройке и анализу производительности MS SQL/
LastSoldier, отличная инструкцию. Спасибо.
С помощью её настроил SQL и 1С сервер. Все "взлетело".
Мне сразу захотелось в неё включить блок по настройки Web-сервера для 1С.
Если автор этого не сделает, я это сделаю самостоятельно.
Может получиться хороший мануал. =)
Много времени заняла доработка текстового файла, сейчас он имеет такое оглавления
Оглавление
Установка и настройка MS SQL Server 2
1. Редакции MS SQL Server 2014 13
2. Изменение версии или ввод ключа Microsoft SQL Server 2014 14
3. Определение установленной версии Microsoft SQL Server 19
4. Настройка портов для доступа к MS SQL Server 2014 по сети 20
5. Изменение параметров использования памяти MS SQL Server 2014 23
6. Добавление нового пользователя в MS SQL Server 25
A. Проверка подлинности SQL Server 27
B. Проверка подлинности Windows 31
7. Создание новой базы в MS SQL Server 32
8. Отсоединение и Присоединение баз данных в MS SQL Server 2014 36
A. Отсоединение базы 36
B. Присоединение базы 37
9. Создание резервной копии базы данных 38
Установка и настройка 1С Предприятия 8.3 43
1. Система программного лицензирования «1С:Предприятия 8.Х» 43
A. Файл программной лицензии 43
B. Виды и варианты программных лицензий 43
C. Про пинкоды и активацию лицензий 44
D. Варианты лицензий 45
E. Особенности учета клиентских лицензий 45
F. Получение лицензии 47
2. Установка клиент-серверного варианта 1С Предприятия 8.3 47
3. Установка шаблонов 52
4. Добавление базы в 1С предприятие 59
A. Добавление информационной базы из окна запуска «1С:Предприятие» 59
B. Добавление информационной базы из консоли администрирования серверов «1С:Предприятия» 63
C. Свойства информационной базы 65
D. Добавление существующей информационной базы в список информационных базы окна запуска «1С:Предприятие» 67
5. Порты которые использует 1С Предприятие 8.3 70
6. Изменение портов используемых 1С Предприятием 8.3 по умолчанию 70
7. Добавление правила в Брандмауэр Windows Server 2012 R2 73
Пост-установочные настройки и функции для оптимизации работы 1С и SQL 80
1. Журнал регистрации и работа с ним 80
A. Где хранится журнал регистрации 80
B. Перенос журнала регистрации на другой сервер 81
C. Настройка журнала регистрации 81
D. Оптимизация журнала регистрации 82
E. Вернуть старый формат записи журнала регистрации 82
2. Очистка КЭША пользователей 1С 82
3. Настройка и создание технологического журнала (ТЖ) 84
4. Настройка кластера 1С 8.3 88
5. Блокировка установки соединений с информационной базой 90
6. Включение отладки на сервере 1С 8 92
7. Что делать если разрастается журнал транзакций - файл _log.ldf для MS-SQL. 94
8. Регламентные операции на уровне СУБД для MS SQL Server 96
A. Обновление статистики 97
B. Очистка процедурного кэша 100
C. Дефрагментация индексов 100
D. Реиндексация таблиц 101
9. Создание Backup`ов средствами Windows (+архивирование) 102
Установка и настройка MS SQL Server для 1С:Предприятие
Тему установки MS SQL Server обычно обходят стороной. Действительно, трудно не установить эту СУБД, даже делая это в первый раз, столь же трудно не запустить в связке с ней Сервер 1С:Предприятия. Однако есть ряд неочевидных тонкостей, которые способны существенно отравить жизнь администратору, о чем мы сегодня и расскажем.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
MS SQL Server занимает первое место по количеству внедрений в связке с 1С:Предприятием, во многом это объясняется низким порогом вхождения, осилить данную связку вполне способен человек без опыта, сугубо по методу Next - Next - Finish. И, что самое интересное, все это будет работать. Скажем больше, в подавляющем большинстве случаев настройки SQL-сервера по умолчанию более чем достаточно для обеспечения производительной работы сервера 1С:Предприятия и трогать их не только не нужно, но даже вредно.
Однако есть другая категория настроек, которая отвечает за расположение и выделение физических ресурсов и которую обычно тоже никто не трогает до тех пор, пока не начнет испытывать проблемы с производительностью.
Прежде всего следует вспомнить про системную базу tempdb, которая активно используется 1С для хранения временных таблиц и промежуточных результатов. Причем она используется сразу всеми базами 1С, работающими на сервере. А так как по умолчанию она располагается в папке установки SQL-сервера, т.е. на системном диске, то при увеличении нагрузки именно tempdb становится бутылочным горлышком для всего сервера. Очень часто это приводит к ситуациям: купили быстрые HDD / SSD, дисковых ресурсов хватает, а 1С тормозит, что способно вызвать у начинающих администраторов серьезные затруднения.
Второй момент. Кодировка сравнения tempdb должна совпадать с кодировкой сравнения информационных баз, иначе это может в ряде случаев привести к неожиданным результатам, вплоть до серьезных ошибок в расчетах.
В тоже время указанных сложностей совсем не сложно избежать, достаточно лишь потратить пару лишних минут при установке или внимательно просмотреть настройки уже установленного сервера.
Подготовка к установке
Еще на стадии планирования следует уделить некоторое внимание дисковой подсистеме. Для хранения пользовательских баз данных и системной базы tempdb следует выделить отдельный раздел, а еще лучше дисковый массив из быстрых дисков или SSD. В нагруженных системах имеет смысл разнести базы данных и журналы транзакций по разным дисковым массивам. Также рекомендуется отформатировать эти разделы с размером кластера в 64 КБ.
Установка MS SQL Server для работы с 1С:Предприятие
Как мы уже говорили, установка SQL-сервера предельно проста, и мы не будем описывать этот процесс подробно, обратив внимание лишь на необходимые настройки. Начнем с выбора компонентов, так как 1С не использует большинство механизмов SQL-сервера и если вы не собираетесь их использовать для иных целей, то оставляем только Службы ядра СУБД и Соединения с клиентскими средствами. В предыдущих версиях эти компоненты назывались Database Engine, Средства связи клиентских средств, также в них можно опционально установить Средства управления (однако лучше установить свежую версию средств управления отдельно).
На закладке Учетные записи служб обязательно установите флаг Предоставить право на выполнение задач обслуживания тома службе ядра СУБД SQL Server.
Затем следует проверить параметры сортировки, если у вас правильно настроены региональные настройки, то скорее всего там ничего изменять не придется, но проконтролировать данный параметр желательно, там должно быть Cyrillic_General_CI_AS.
В Конфигурации сервера укажите Смешанный режим проверки подлинности и задайте пароль суперпользователю SQL - sa. Также укажите ниже администраторов данного экземпляра SQL-сервера, как минимум следует добавить текущего пользователя, но если администрировать данный экземпляр будут другие ваши коллеги, то имеет смысл сразу их указать.
Следующая закладка - Каталоги данных - требует самого пристального внимания. Обязательно укажите в качестве места хранения пользовательских баз место на производительном массиве или отдельном диске. Несмотря на то, что расположение базы можно указывать при ее создании, задание правильных настроек по умолчанию избавляет вас от лишней работы, а также от ситуации, когда база создается средствами 1С и оказывается в каталоге по умолчанию, т.е. на системном диске. Также сразу можете указать каталог для хранения резервных копий.
Современные версии MS SQL содержат отдельную закладку TempDB, для настройки одноименной базы, в предыдущих версиях данных настроек нет и о том, как настроить данную базу будет рассказано ниже. Здесь же мы выставляем для базы: количество файлов - 4, начальный размер - от 1 ГБ до 10 ГБ, авторасширение - 512 МБ, аналогичный размер и авторасширение устанавливается для файла журнала. Также не забываем проконтролировать размещение TempDB на отдельном разделе/диске.
Остальные настройки можно оставить по умолчанию и завершить установку.
Для управления сервером СУБД следует скачать и установить SQL Server Management Studio (SSMS), ее можно установить как на сервер, так и на компьютер администратора, чтобы управлять с него всеми доступными SQL-серверами. Никаких особенностей в установке SSMS нет.
Настройка операционной системы
Если у вас имеется уже установленный экземпляр MS SQL, либо вы не выполнили всех рекомендаций по установке, то следует проверить ряд настроек операционной системы. Запустим редактор локальной политики безопасности secpol.msc и перейдем в раздел Локальные политики - Назначение прав пользователя. Откроем политику Выполнение задач по обслуживанию томов и убедимся, что в списке пользователей присутствует учетная запись от имени которой работает SQL Server - NT SERVICE\MSSQLSERVER.
Если ваш экземпляр MS SQL Server установлен отдельно от Сервера 1С:Предприятие, то выполните аналогичную настроку для политики Блокировка страниц в памяти.
Настройка MS SQL Server для работы с 1С:Предприятие
Если вы имеете дело с уже установленным экземпляром SQL-сервера, убедитесь, что кодировка сравнения Cyrillic_General_CI_AS, для этого откройте Managment Studio, выберите необходимый экземпляр SQL-сервера и щелкнув на нем правой кнопкой мыши перейдите к Свойствам:
В противном случае данные следует выгрузить средствами 1С, а сервер переустановить (или установить еще один экземпляр, если данный используется другими службами).
Затем перейдите к закладке Память, за основу для расчетов принимается объем выделенного SQL-серверу размера памяти (RAM). Обычно это объем памяти сервера за вычетом ОЗУ для ОС и иных служб, например, Сервера 1С:Предприятие. Для сервера с объемом ОЗУ в 32 ГБ мы будем исходить из доступного объема в 24 ГБ, выделив 8 ГБ для ОС и сервера 1С. Но данные соотношения не являются эталоном и в вашем случае это могут быть иные числа.
Для расчета минимального объема памяти применяется формула:
Для максимального применяется полный размер RAM, за вычетом 1 ГБ на каждые выделенные 16 ГБ ОЗУ (все объемы указываются в МБ):
В разделе Параметры базы данных можно проконтролировать места хранения пользовательских баз и журналов, а также изменить их при необходимости. Все изменения будут применены только к вновь создаваемым базам данных, уже существующие БД потребуется перенести в новое расположение вручную (если в этом есть необходимость).
В разделе Дополнительно - Параллелизм установите параметр:
Следующая настройка будет связана с безопасностью. Для подключения 1С к серверу чаще всего используется учетная запись sa, что, мягко говоря, небезопасно, так как дает вошедшему под ней полный доступ к SQL-серверу. Учитывая, что администрированием баз 1С часто занимаются сторонние специалисты, то имеет смысл создать для них отдельную учетную запись.
Для этого раскройте Безопасность - Имена для входа и создайте новое имя (учетную запись), укажите проверку подлинности SQL-сервер и задайте пароль.
Затем перейдите на закладку Роли сервера и разрешите dbcreator, processadmin и public.
После чего используйте для подключения к SQL-серверу из 1С именно эту учетную запись.
Все создаваемые базы данных создаются на основе служебной базы model и к ним применяются все настройки этой БД, поэтому перейдем в Базы данных - Служебные базы данных и откроем свойства базы model. В разделе Файлы укажите значения начального размера базы от 1 ГБ до 10 ГБ, начальный размер журнала транзакций от 1 ГБ до 2 ГБ и авторасширение в 512 МБ. Выбирая начальный размер базы, нужно исходить из соображений чтобы размер файла превосходил загружаемый размер образа информационной базы 1С.
В разделе Параметры укажите Модель восстановления в соответствии с применяемой политикой резервного копирования и установите параметр:
Для уже существующих баз потребуется выполнить аналогичные настройки, за исключением параметра Начального размера, его следует выставить больше, чем текущий размер файлов базы и лога транзакций. Для базы данных желательно указать планируемый размер БД за длительный период эксплуатации, а для файла журнала размер, исключающий его авторасширение в процессе работы.
После внесения всех изменений в конфигурацию службу SQL сервера потребуется перезапустить.
Настройка сетевых протоколов
Для настройки сетевых протоколов откроем Диспетчер конфигурации SQL Server и перейдем в раздел Сетевая конфигурация SQL Server - Сетевые протоколы для MSSQLSERVER, где MSSQLSERVER - имя вашего экземпляра, и установим следующие настройки:
- Общая память (Shared Memory) - Включено
- Именованные каналы (Named pipes) - Отключен
- TCP/IP - Включено
Настройка базы tempdb
В предыдущих версиях MS SQL Server нет возможности настроить параметры базы tempdb при установке, также вы могли выполнить установку со значениями по умолчанию, либо вам достался уже установленный экземпляр, в этих случаях нужно произвести дополнительную настройку. Откроем Managment Studio и перейдем в Базы данных - Служебные базы данных в свойства базы tempdb. В разделе Файлы разобьем базу на четыре файла данных и установим для них начальный размер от 1ГБ до 10 ГБ, но не менее текущего размера файла, авторасширение - 512 МБ. Аналогичные настройки установим и для файла журнала.
Перенос базы tempdb
Довольно часто встречаются ситуации, когда tempdb требуется перенести в другое место. Например, сервер был установлен с параметрами по умолчанию и tempdb находится на системном разделе, или вы приобрели SSD и хотите перенести туда не только базы, но и tempdb (что является правильным решением). Также при большой нагрузке на tempdb его рекомендуется выносить на отдельный диск.
Для того, чтобы изменить место расположения файла tempdb откройте Managment Studio, выберите Создать запрос и в открывшемся окне введите следующий текст, где E:\NEW_FOLDER - новое расположение для базы:
Данный запрос состоит из двух секций, верхняя переносит файл данных, нижняя - журнал транзакций. Если вы разделили базу на четыре файла данных, то следует изменить запрос, создав для каждого файла данных свою секцию.
Создав запрос нажмите Выполнить, после выполнения запроса перезапустите SQL-сервер, файлы базы и лога tempdb будут созданы в новом месте, файлы по старому расположению следует удалить вручную.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Итак в продолжении темы обслуживания баз 1С присмотримся к системе управления реляционными базами данных Microsoft SQL Server. Этот продукт предоставляет нам большие возможности обработки, хранения, резервирования и восстановления баз. Я начну небольшой цикл статей, посвященных этой теме. Все, что будет написано ниже, является личным мнением по данному вопросу и подлежит критике.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
В данной статье рассмотрен процесс создания планов обслуживания баз. Оповещение оператора, а так же пример восстановления базы рассмотрим в следующих статьях.
- Сервер Windows Server 2008 Enterprise: SRV-1C-TEST.
- Microsoft SQL Server 2008: SRV-1C-TEST.
- Тестовая база BuhFirma.
Проводить обслуживание базы в период 00:30 - 01:00, при этом обслуживание не должно быть заметным (либо слабозаметным) для пользователей базы.
- Простая.
- Полная.
- С неполным протоколированием.
- Полное.
- Разностное.
- Копирование журнала транзакций (логов).
При полном варианте копирования происходит сохранение базы mdf и журнала транзакций. Разностное копирование (по-другому дифференциальное) производит копирование данных, изменившихся с момента создания последней полной резервной копии. Копирование журнала транзакций соответственно производит сохранение только самого журнала транзакций.
При выборе простой модели восстановить базу данных можно с момента создания последней разностной или полной резервной копии. При выборе полной модели восстановления мы можем восстанавливать базу до минуты, создав полную резервную копию, например, ночью, и в течение дня создавать копии журнала транзакции. Ниже мы увидим, где всплывает этот момент. Хотелось так же привести некоторые выдержки из MSDN: "Модель восстановления с неполным протоколированием предназначена исключительно как дополнение к модели полного восстановления. В общем случае модель восстановления с неполным протоколированием похожа на модель полного восстановления, за исключением того, что протоколирование большинства массовых операций в ней производится в минимальной степени".
Модель восстановления своей базы вы можете посмотреть, зайдя в свойства базы данных, например BuhFirma и перейдя на строку - Параметры.
Как выбрать модель восстановления? Надо лишь ответить на вопрос: смертельна ли потеря информации за время, прошедшее после полного резервного копирования? Если ответ да, тогда выбираем полную модель восстановления, если нет, простую. Модель с неполным протоколированием стоит применять только на время массовых операций в БД.
Таким образом, если вы выбрали простую модель, то восстановить данные вы сможете только на момент ночного полного или разностного копирования, а всю информацию после этого пользователи будут восстанавливать вручную. Выбирая Полную модель, вы обязательно должны делать резервное копирование журнала транзакций, иначе логи будут сильно расти. При любой модели восстановления вы всегда должны иметь полную резервную копию.
В начале создадим ночной план обслуживания базы, который будет включать в себя последовательность следующих действий:
- Проверка целостности базы
- Перестроение индекса
- Обновление статистики
- Очистка процедурного кэша СУБД
- Резервное копирование базы данных
- Очистка после обслуживания
- Очистка журнала
Для этого подключимся к MSSQL серверу с помощью среды Microsoft SQLServer Management Studio. Запустить среду можно перейдя в Пуск - Все программы - Microsoft SQL Server 2008.
Подключимся с серверу SQL и перейдем в Управление - Планы Обслуживания. Кликнем правой кнопкой по Планы обслуживания и выберем Создать план обслуживания. Дадим ему имя: SRV1CTEST.
Перед нами окно SRV1CTEST, в котором мы и будем создавать последовательность действий, обозначенных раннее. Сразу видим появившейся Вложенный_План1. Справа от названия вложенного плана вы увидите иконку в виде таблички. Нажимаем на нее и попадаем в свойства расписания задания. Здесь можно менять название вложенного плана, выставить частоту повторения в Ежедневно и установить время. И так теперь осталось наполнить наш план заданиями. Для этого с Панели инструментов, которая находится справой стороны, перетаскиваем задания.
После того, как вы перетащили задание, щелкните по нему два раза. Откроется окно, в котором в строке Базы данных мы выбираем созданную нашу базу BuhFirma. Далее таким же образом добавляем задания Перестроение индекса и Обновление статистики, не забыв выбрать в них нужную базу данных.
Процедура Перестроение индекса пересоздает индекс с новым коэффициентом заполнения. За счет этого мы увеличиваем производительность работы в БД.
Задача Обновление статистики обновляет сведения о данных таблиц для MS SQL. Что тоже повышает производительность. Но после этой операции надо обязательно проводить очистку кэша.
Пока остановимся и поговорим о настройке связей между заданиями. Связи отражают последовательность выполнения. Что бы провести связь между заданиями надо нажать один раз на задание и увидите появившуюся стрелку. Её надо перетащить на следующее задание. У связи может быть 3 цвета: синий, зеленый и красный, каждый из которых означает три типа срабатывания перехода: при простом завершении предыдущего задания - Завершение, в случае успешного завершения - Успех, а в случае возникновения ошибки при выполнение предыдущего задания - Ошибка. Все эти параметры вы можете увидеть, нажав правой кнопкой мыши на проведенную между заданиями стрелку. Таким образом, если нам надо, чтобы Перестроение индекса срабатывало только после успешного завершения задания Проверка целостности базы данных, мы должны связать их стрелкой. Нажав правой кнопкой мыши на стрелку, сменим ее режим на Успешно, как видим, ее цвет изменился на зеленый.
На данный момент мы имеем 3 созданных задания в нашем вложенном плане. Как вы могли заметить, задания Очистка процедурного кэша СУБД в панели элементов нету. Мы воспользуемся задачей Выполнение инструкции T-SQL. Перетащим ее в план, и щелкнем на ней два раза. Мы видим окно, в которое впишем следующее:
Нажмем ОК. Далее стоит добавить задание задачу Резервное копирование базы данных. Так же щелкнув на добавленном задании, увидим опции настройки задания.
Здесь, исходя из поставленной задачи, выбираем полное резервное копирование, место, куда будем помещать архивы, а так же не забудем установить параметр Сжимать резервные копии.
Задача Очистка после обслуживания позволяет удалять устаревшие архивы. В нем мы можем установить место расположения архивов, а так же время, по истечению которого они будут удаляться.
Задача Очистка журнала производит удаление данных журнала, связанных с процессами резервного копирования, восстановления, планами обслуживания баз, а также с деятельностью агента SQLServer.
Сохранив план обслуживания, надо удостовериться в том, что на нашем сервер запущен Агент SQL Server. Для этого перейдем в Пуск - Все программы - Microsoft SQL Server 2008 - Средства настройки - Диспетчер конфигурации SQL Server. Перейдя на строчку Службы SQLServer, проверим, что служба Агент SQLServer находится в состоянии Работает и режим запуска выставлен в Авто.
В конце хотелось бы сказать о том, что использование задачи Перестроение индекса можно заменить или совместить с задачей Реорганизация индекса. Реорганизация индекса представляет собой инструмент для дефрагментации индексов. Для того что бы просмотреть какие операции требуются индексу, необходимо просмотреть физическую статистику индекса. Для этого правой кнопкой мыши нажмите на базу данных, перейдите в Отчеты - Стандартные отчеты - Физическая статистика индекса.
Следить за состоянием выполняемых операций вы можете из Управление - Планы обслуживания. Для этого в свойствах плана SRV1CTEST выберите Просмотр журнала. Так же можно просмотреть журнал, который ведет Агент MS SQL по этому заданию. Для этого перейдите на строку Агент MS SQL и в свойствах задания SRV1CTEST выберите Просмотр журнала.
- Обслуживание баз 1С в MS SQL Server. Часть 1. Настройка планов обслуживания БД.
- Обслуживание баз 1С в MS SQL Server. Часть 2. Оповещение по e-mail.
- Обслуживание баз 1С в MS SQL Server. Часть 3. Восстановление из резервных копий.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Настраиваем 1С Предприятие 7.7 для работы с SQL Server 2000
Одним из способов повысить быстродействие 1С Предприятия 7.7, особенно при работе с большими базами, является переход от файлового режима 1С к использованию SQL сервера. Несмотря на то, что оба продукта уже заканчивают свой жизненный цикл, данная тема остается довольно актуальной. В данной статье мы рассмотрим практическую настройку сервера для работы 1С Предприятия совместно с SQL Server 2000.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Немного теории, или что нам дает SQL?
Перед тем как браться за реализацию проекта, необходимо усвоить базовый объем знаний и твердо знать ответы на следующие вопросы: в чем основное отличие файлового и SQL вариантов работы 1С Предприятия, от чего зависит быстродействие в обоих случаях и какие требования предъявляются к оборудованию и сети. Непонимание этих, в общем то простых, вещей приводит к тому, что переход на SQL версию 1С не приносит желаемых результатов или вообще, результат противоположный ожидаемому.
Рассмотрим работу 1С в режиме разделения файлов. Вся обработка информации производится на рабочей станции, сервер играет роль общего файлового хранилища. Основные требования к такому серверу: быстрый жесткий диск и отказоустойчивость дисковой системы (обычно реализуется RAID 1, реже RAID 10). Обычно такой "сервер" представляет из себя обычную бюджетную машину с RAID контроллером и гигабитным сетевым адаптером.
При выполнении операции (отчета, обработки и т.п.) часть базы или даже вся база закачивается по сети на рабочую станцию, где уже и выполняется вся необходимая обработка данных. От чего зависит быстродействие в данном случае? В первую очередь от мощности рабочей станции и пропускной способности сети, более мощная машина будет более быстро строить отчеты и выполнять проводки.
Еще одним важным параметром является размер базы данных, с ее ростом выше некоторых пределов быстродействие начинает падать в геометрической прогрессии. Основным узким местом становится пропускная способность сети, а основным фактором влияющим на быстродействие и определяющий критический размер базы является количество активных пользователей.
Наш практический опыт показывает: для небольших рабочих групп (5-10 пользователей) критический размер базы начинается от 200-300 Мб. Бороться с этим можно увеличением быстродействия сети и оптимизацией потоков трафика в организации или ежегодной (ежеквартальной) сверткой БД.
Однако свертка это не выход, для нормальной работы торгового предприятия необходимы данные как минимум за текущий год, да и данные прошлых периодов также бывают частенько нужны. Вложения в расширение пропускной способности сети себя как правило не окупают, размеры БД и объемы трафика в сети растут намного быстрее, особенно если руководство решит "немного" расшириться, на 1-2 рабочих места.
Теперь посмотрим как обстоят дела в SQL варианте. Вместо таблиц все данные хранятся в одной SQL базе данных. Теперь рабочая станция передает на сервер короткие запросы, которые полностью обрабатываются на стороне сервера и рабочей станции возвращается конечный результат запроса. Это позволяет снизить трафик в разы и во столько же раз повышает нагрузку на сервер. К быстродействию рабочих станций особых требований не предъявляется, также будет вполне достаточно обычной 100 Мб сети.
Хотя следует помнить, что 1С Предприятие 7.7 для SQL довольно неоптимально и не использует многие возможности SQL сервера, поэтому часть данных обрабатываются не сервером, а рабочей станцией и в случае работы с емкими отчетами и обработками быстродействие рабочей станции тоже будет играть не последнюю роль. Основная же нагрузка ложится на сервер.
Распространенная ошибка - использование в качестве SQL сервера того же железа, что использовалось в качестве файлового сервера. Можно с уверенностью сказать, что результат будет противоположен ожидаемому. Если сразу пять пользователей запустят формирование отчетов, все эти пять отчетов будут формироваться сервером, следовательно вычислительных ресурсов сервера должно хватать для одновременной обработки запросов сразу от всех пользователей. Объем оперативной памяти должен быть достаточным для того, чтобы в нем полностью помещались SQL базы, также базы желательно вынести на отдельный от системы и других данных жесткий диск (дисковый массив), чтобы избежать конкуренции за доступ к головкам жесткого диска.
В случае совмещения SQL сервера с сервером терминалов на одной физической машине следует удостовериться, что ее ресуров достаточно для одновременной обработки запросов SQL сервера и клиентских приложений 1С, а оперативной памяти достаточно как для SQL сервера, так и для пользовательских приложений. В любом случае желательно ограничится выносом в терминал только 1С, прочие приложения желательно оставить на рабочих станциях, либо разнести сервер терминалов и SQL сервер по отдельным машинам. Также нежелательно совмещать на одном SQL сервере несколько объемных 1С баз. Как показывает практика, бывает дешевле купить под вторую базу отдельный сервер, чем покупать мощный сервер сразу под все базы.
Подведем краткие итоги. Основные преимущества SQL сервера раскрываются при работе с базами большого объема, в тоже время нет никакого смысла переводить на SQL небольшие базы с малым количеством пользователей.
От теории к практике. Установка SQL сервера.
Установка MS SQL Server 2000 проста и незамысловата, однако уже на стадии установки необходимо указать несколько отличных от установки по умолчанию параметров, необходимых для нормальной работы 1С. Платформой для установки сервера будет Windows Server 2003 SP2. Если вы устанавливаете версию SQL сервера с пакетом обновления ниже чем SP3, то система выведет вам грозное предупреждение, что устанавливаемая версия несовместима с системой, которое можно смело проигнорировать, практика показала - все работает прекрасно.
Далее, в процессе установке принимаем все значения по умолчанию пока не дойдем до экрана Services Accounts, здесь устанавливаем переключатель в положение Use the Local System account
На следующем экране выбираем вариант Mixed Mode и вводим пароль для пользователя sa, от имени которого мы будем подключаться к БД.
Остальные параметры оставляем по умолчанию. По завершению установки желательно обновить SQL сервер до последней версии, установив SP4 (скачать). Установка SP4 производится со значениями по умолчанию, кроме параметров соединения с сервером, здесь переводим переключатель в верхнее положение и вводим пароль для sa.
Настройка 1С Предприятие
Теперь, когда SQL сервер установлен и готов к использованию необходимо настроить 1С Предприятие. Напомним, что для работы с SQL сервером необходима отдельная версия 1С для SQL. Для успешной работы с SQL сервером в базе 1С должен быть заведен хотя бы один пользователь. Далее загружаем целевую базу в конфигуратор и производим выгрузку данных через Администрирование - Выгрузить данные.
После чего создаем заготовку будущей БД, для этого в отдельную папку копируем все папки из рабочей базы данных и все файлы кроме файлов конфигурации и таблиц (V7Plus, библиотеки для работы с торговым оборудованием и т.п.)
Следующим шагом необходимо создать новую SQL базу для хранени наших данных. Для этого запускаем Enterprise Manager.
На первой закладке открывшегося окна вводим имя создаваемой базы, вторая и третья закладка определяют пути хранения файла БД и файла лога транзакций. По умолчанию предполагается их хранение в папке установки SQL сервера, однако желательно хранить их в отдельной папке рядом с базой 1С (желательно на отдельном жестком диске или на отдельном разделе).
Создав базу, подключаем папку с заготовкой в качестве базы 1С и загружаем Конфигуратор. На вопрос выбора формата хранения данных указываем MS SQL Server, в Конфигураторе выбираем Администрирование - Параметры базы данных SQL и заполняем поля.
В качестве сервера указываем сетевое имя машины, его можно подсмотреть в SQL Server Service Manager, щелкнув на значке в трее рядом с часами. В поле База Данных вводим название базы, которое мы указали при ее создании в Enterprise Manager. Пользователь sa, ниже вводим его пароль.
Как видим ничего сложного нет, и при наличии должных навыков весь процесс занимает не более часа, при этом большая часть времени уходит на загрузку - выгрузку базы.
Дополнительные материалы:
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Читайте также: