При необходимости развернуть копию информационной базы 1С для разработки, тестирования или конфигурирования из файла резервной копии СУБД (.bak) специалисты нередко сталкиваются со сложностями: выбор правильной редакции MS SQL Server, установка средств администрирования, ошибки авторизации и сетевого взаимодействия между сервером приложений 1С:Предприятия и сервером баз данных. Разберем по шагам весь процесс настройки окружения, восстановления данных и устранения типичных ошибок.
Для целей разработки, тестирования и обучения не требуется приобретать коммерческие лицензии уровня Standard или Enterprise. Проанализируем доступные варианты:
После установки экземпляра СУБД и среды SSMS перейдем к процедуре развертывания резервной копии.
Рассмотрим порядок действий для восстановления базы данных в среде SQL Server Management Studio:
sysadmin или встроенной sa)..bak..mdf) и журнала транзакций (.ldf).После успешного восстановления базы данных в СУБД необходимо зарегистрировать ее в кластере серверов 1С:Предприятия через утилиту администрирования (консоль кластера) или через список информационных баз тонкого/толстого клиента:
MS SQL Server.ИмяСервера\ИмяЭкземпляра или IP_Адрес\ИмяЭкземпляра (например, TESTDBSQL\MSSQLSERVER1).sa или специальный служебный пользователь).Если сервер 1С:Предприятия и MS SQL Server находятся на разных физических или виртуальных машинах, при создании базы может возникнуть ошибка: microsoft sql native client 11.0: Сетевые интерфейсы SQL Server: Сервер не поддерживает запрошенный протокол [xFFFFFFFF] или Сервер баз данных не обнаружен. Выясним основные причины и способы их устранения:
По умолчанию в некоторых редакциях и именованных экземплярах MS SQL Server протокол TCP/IP отключен. Откроем SQL Server Configuration Manager, перейдем в раздел SQL Server Network Configuration → Protocols for [Имя_Экземпляра]. Убедимся, что протокол TCP/IP переведен в состояние Enabled (Включено). После изменения параметров обязательно перезапустим службу SQL Server.
При подключении к именованному экземпляру сервер 1С обращается к службе SQL Server Browser (порт UDP 1434) для определения динамического порта СУБД. В SQL Server Configuration Manager найдем службу SQL Server Browser, переведем тип запуска в Automatic и запустим ее.
На машине с MS SQL Server необходимо открыть входящие порты: TCP 1433 (стандартный порт СУБД) и UDP 1434 (для SQL Server Browser), либо добавить в исключения исполняемые файлы sqlservr.exe и sqlbrowser.exe.
Ошибка протокола [xFFFFFFFF] часто вызвана несовместимостью версий протокола безопасности TLS (например, СУБД настроена на использование исключительно TLS 1.2, а устаревший Native Client на сервере приложений не поддерживает эту версию). Решением является установка актуальных накопительных пакетов обновления (Cumulative Update) для SQL Server Native Client 11.0 или переход на современный драйвер Microsoft OLE DB Driver for SQL Server (MSOLEDBSQL) на машине с сервером 1С.
В свойствах сервера MS SQL Server (раздел Security) переключатель проверки подлинности должен стоять в положении SQL Server and Windows Authentication mode (Проверка подлинности SQL Server и Windows). После смены режима требуется перезапуск службы СУБД.
Если подключение к СУБД выполняется не под учетной записью sa, а под специально созданным пользователем, ему необходимо предоставить полные права на восстановленную базу:
db_owner.Важно помнить фундаментальное правило MS SQL Server: резервная копия (бэкап .bak), созданная в более новой версии СУБД (например, SQL Server 2016), не может быть восстановлена на более старую версию (например, SQL Server 2012 или 2008 R2).
Если требуется перенести базу между несовместимыми версиями SQL Server, используем платформенный механизм 1С:Предприятия:
.dt.Для задач разового анализа или доработки конфигурации выгрузка в .dt также позволяет развернуть локальную файловую базу данных без необходимости настройки сервера 1С и СУБД.