Заметки сисадмина о интересных вещах из мира IT, инструкции и рецензии. Настраиваем Компьютеры/Сервера/1С/SIP-телефонию в Москве

SQL 2008 и 1С 7.7

1C 7.7 и MS SQL 2008 могут работать вместе!
Даже под Windows Server 2008 x64
Это проверено. Успешно используется уже пол-года на базе порядка 100GB.

Реально быстрее, в некоторых случаях на порядок, чем под предудущий скуль.

Неправ также и тот, кто утверждает, будто под 2008 не работают ВК типа 1С++, rainbow и подобных. Все работает. Как? Читайте ниже.

Надо просто уметь их готовить к общению друг с другом.
Вот несколько рекомендаций, выработанных мной в период “скрещивания” этих выходцев из разных миров:

Во первых скачайте вот это (и передайте дальше. Народ не хранит файлы долго,):
http://narod.ru/disk/9000707000/lek2008%20(copy%202).rar.html

1.Чтобы не было ошибки «Требуется драйвер ODBC MS SQL версии 6.5 и выше».
a.Если VISTA или Windows 2008. В windows\system32 и windows\sysWOW64 заменяем файлы sqlsrv32.dll и sqlsrv32.rll на аналогичные из 2003 server. У вас должны быть права локального администратора на данной машине, предварительно перехватываем ownership и full control на себя (takeown /F sqlsrv32.dll takeown /F sqlsrv32.rll). Сами файлы есть в архиве по ссылке выше.
b.Устанавливаем пропатченный релиз 27. Он лежит в сети повсюду. В нем сильно патчена bkend.dll и чуть-чуть 1cv7s.exe. Ищите файл 1Cv_77_27_Unisetup или патч 1С+SQL2005. Если совсем лень, возьмите мои файлы по ссылке выше, но предупреждаю, я там много правил под себя.

2.Чтобы не было ошибки «Кодовая страница ИБ не соответствует системной».
a.В каждый каталог базы (если у вас их несколько) кладем пустой файл OrdNoChk.prm (иначе 1С будет говорить про неправильный порядок сортировки и вылетать)
b.При установке MS SQL ставим кодовую страницу Cyrillic_general_CI_AS. После установки сервера кодовую страницу сменить невозможно!
c.В свойствах БД SQL при ее создании ставим ту же кодовую страницу: Cyrillic_general_CI_AS
3. Некоторые базовые шаги по оптимизации работы с SQL:
a.В свойствах базы SQL параметр «recovery model» (модель восстановления) необходимо устанавливать в «simple» (простая)
b.Автоматический рост файлов ИБ необходимо ставить в процентах, не менее 10.
c.Необходимо как можно более точно указать диапазон выделяемой сервером оперативной памяти. Широкие диапазоны (а по умолчанию там от 0 до 20GB) приводят к замедлению работы. Настроить эти параметры можно в свойствах сервера.
4.Под VISTA и SERVER 2008 могут не работать очень многие внешние компоненты 1С:
a.Это связано с политикой безопасности этих ОС, которая не поддается настройке. Без перепрограммирования конфигурации это не лечится
b.Необходимо использовать компоненту VKLoader.dll. Она и инструкция к ней также лежит в файле по ссылке выше.
5.Под MS SQL 2008 1С может при реструктуризации таблиц ИБ и обновлении MD выдавать ошибку «База данных не может быть открыта в однопользовательском режиме».
a.Иногда помогает просто подождать 10-15 минут и ошибка проходит сама собой. 1С некорректно работает с сервером: она оставляет открытыми служебные соединения, которые ей же самой и мешают. Сервер сам закрывает такие соединения по таймауту.
b.Чтобы кардинально избавиться от таких проблем можно пропатчить bkend.dll, заменив там все вхождения строки (их там 2): Select COUNT(*) from master..sysprocesses where dbid=DB_ID(‘%s’) на вот такую:Select COUNT(*) from master..sysprocesses where kpid=DB_ID(‘%s’) В результате 1С перестанет проверять наличие повисших сеансов и будет запускаться даже если они есть. В частности станет возможно пользоваться средством management studio параллельно с работой конфигуратора 1С.

Вот, собственно и все.
Успехов в нелегком деле!

Leave a Reply