Установка 1С:Предприятие 7.7 на Microsoft SQL Server 2008 R2
1. Установка Windows Server 2008 R2
В качестве серверной ОС используем Microsoft Windows Server 2008 R2. Об установке этой системы подробно можно прочитать в статье «Установка Windows Server 2008 R2».
2. Установка SQL Server 2008 R2
Далее устанавливаем Microsoft SQL Server 2008 R2. Во время установки выбираем:
oПараметры сортировки — «Cyrilic_General_CI_AS»
oРежим проверки подлинности —«Смешанный режим»
Очень подробно об установке SQL Server я писал в статье «Установка Microsoft SQL Server 2008 R2».
3. Создание новой базы данных в SQL Server 2008 R2
Добавляем нового пользователя в SQL Server 2008 R2. Обязательно даем ему рольprocessadmin, иначе будем натыкаться на ошибку:
«Доступ к базе возможен только из одного каталога информационной базы»
Затем создаем новую базу данных, указав:
oИмя базы данных не должно начинаться с цифры или иметь пробелы в названии, иначе получим ошибку:
«неправильный синтаксис около конструкции %имя базы данных%»
oВ качестве владельца указываем только что созданного пользователя (В моем случае имя пользователя — «UserSQL» )
oМодель восстановления базы данных: «Простая» (1С:Предприятие 7.7 прекрасно работает и приполноймодели восстановления. Но в этом случае, вы должны хорошо понимать все плюсы и минусы данного решения).
oУровень совместимости: «SQL Server 2000 (80)» .
О том как это сделать читайте в статье «Добавление пользователя и создание новой базы данных в Microsoft SQL Server 2008 R2».
4. Настройка Windows Server 2008 R2
Теперь необходимо заменить оригинальные фалыodbcbcp.dll,sqlsrv32.dllи sqlsrv32.rll (скачать все файлы одним архивом) в каталогахC:\Windows\System32и вC:\Windows\SysWOW64файлами из каталогаC:\Windows\System32под управлением Windows Server 2003 (в архиве).
Чтобы сделать это необходимо стать владельцем этих файлов и получить права на их редактирование . Для этого заходим вC:\Windows\System32находим файлodbcbcp.dll, кликаем по нему правой кнопкой, выбираем «Свойства». В открывшемся окне переходим на вкладку «Безопасность», нажимаем «Дополнительно».
В появившемся окне переходим на вкладку «Владелец» , нажимаем «Изменить» , выбираем текущего пользователя и жмем 2 раза «ОК» .
Затем на вкладе «Безопасность» нажимаем «Изменить» и для текущего пользователя выставляем уровень безопасности «Полный доступ» . Закрываем окна кнопкой «ОК» .
Только после этого система даст нам заменить файл odbcbcp.dll.
Аналогичные действия необходимо выполнить и для всех остальных файлов в папкахC:\Windows\System32иC:\Windows\SysWOW64.
Если этого не сделать, при запуске 1С:Предприятие будем натыкаться на ошибку:
«Ошибка для доступа к базе данных требуется ODBC-драйвер для MS SQL Server версии 3.50.0303 или старше»
5. Установка 1С:Предприятие 7.7
Теперь необходимо установить 1С:Предприятие 7.7, ставим версию для SQL. Об особенностях установки читайте в статье «Установка системы 1С:Предприятие 7.7 в Windows x64».
6. Патч и замена файла BkEnd.dll
Теперь необходимо заменить файлBkEnd.dllиз оригинальной поставки 1С:Предприятие 7.7, находящего по пути C:\Program Files (x86)\1Cv77\BIN, «пропатченным» файломBkEnd.dll. Вы можете использовать мой файл, или сделать изменения самостоятельно. О том как и что необходимо в нем изменить читайте в моей статье «Работа в Hex-редакторе Free Hex Editor Neo, на примере патча файла BkEnd.dll для работы 1С:Предприятие 7.7 с Microsoft SQL Server 2008 R2».
Замену файла делаем для того, чтобы избавиться от ошибок:
o«Требуется MS SQL Server 6.5 + Service Pack 5a или более старшая версия!»
o«Порядок сортировки, установленный для базы, отличается от системного!»
o«Неправильный синтаксис около ключевого слова «TRANSACTION»
o«База данных не может быть открыта в однопользовательском режиме»
7. Создание представления sksprocesses в MS SQL Server
Продолжаем исправлять ошибку«База данных не может быть открыта в однопользовательском режиме». Для этого создадим представление в базе данных (источник).
Заходим в программу «Среда Microsoft SQL Server Management Studio» («Пуск» — «Все программы» — «Microsoft SQL Server 2008 R2» — «Среда Microsoft SQL Server Management Studio» ), выбираем наш SQL Server (в моем примере это «S4\ULTRA»), раскрываем вкладку «Базы данных» , затем «Системные базы данных» и вкладку «master» . На вкладке «Представления» кликаем правой кнопкой мыши и в меню выбираем «Создать представление» .
Откроется окно «Добавление таблицы» , закроем его нажав «Закрыть» .
Теперь в окне слева напишем текст представления:
select * from sysprocesses where cmd <> 'checkpoint'
Затем, нажимаем «Выполнить код SQL» (Иконка с красным восклицательным знаком на панели)
После того, как код изменится, сохраним представление, назвав его sksprocesses.
В результате чего в обозревателе объектов увидим только что созданное представлениеdbo.sksprocesses. Кликаем по нему правой кнопкой мыши и выбираем «Свойства» .
В результате чего в обозревателе объектов увидим только что созданное представлениеdbo.sksprocesses. Кликаем по нему правой кнопкой мыши и выбираем «Свойства» .
Откроется окно «Свойства представления» , в нем переходим на вкладку «Разрешения» и добавим пользователяguest. Для этого нажимаем «Найти» в окне добавления пользователей «Обзор» , отмечаем в списке пользователяguest и жмем «ОК» .
Теперь отмечаем разрешения дляguest:
oВставка
oВыборка
oИзменение
oНазначение владельцем
oОбновление
oПросмотр определения
После чего нажимаем «ОК» .
На этом создание представления завершено.
- root от