За долгое время работы с 1С, файловая база данных, в которой изначально работало 3-4 бухгалтера, прирастает пользователями, а главное увеличивается в размерах и порой очень сильно.
В какой-то момент нагрузка на базу такая, что работать в файловой версии базы данных уже не представляется комфортным.
Решением становится перевод базы данных из файловой версии в SQL. Преимущества SQL сервера очевидны: доступ к базе осуществляется равномерно, за счет запросов к файлу базы данных программным обеспечением Microsoft SQL Server 2016, это позволяет сохранить очередность внесения изменений в таблицы, надежность хранения данных и скорость обработки запросов.
При росте кол-ва пользователей, работающих с базой данных – такой переход неизбежен.
продолжение статьи ниже..
А это пример тарифа, Аренды Сервера 1С на нашем хостинге
ознакомьтесь также с нашими ценами на выгодные тарифы по аренде сервера 1С, к которым в том числе можно подключаться и с ноутбуков или компьютеров с операционной системой Mac OS
БЕСПЛАТНЫЙ ТЕСТОВЫЙ ДОСТУП НА 5 ДНЕЙ
Тариф S-4
-
Процессор 2 потоковых ядра Intel
-
плюс много места под базы 1C SQL
-
Лицензии Windows и Office включены
3 800 рублей в месяц
Оптимальная нагрузка одновременная работа
4-5 пользователей
Как перевести базу из файловой в SQL?
Идеальным способом, является выгрузка файла *.dt через Конфигуратор 1С. Это не сложный процесс, для этого необходимо под администратором базы данных зайти в Конфигуратор файловой базы данных, которую вы хотите переделать в SQL версию. В меню Администрирование выбрать «Выгрузка информационной базы» и сохранить файл с данными.
Далее необходимо создать пустую SQL базу данных через оснастку «Администрирование Сервера 1С Предприятия». Создание пустой базы данных через эту оснастку подробно описано в нашей статье по созданию базы данных для SQL: https://needsysadmin.ru/create-base-1c-on-sql-server рекомендуем ознакомиться с ней.
После того, как пустая база данных на сервере SQL создана, мы можем загрузить в нее ранее сохраненную выгрузку в формате *.dt предварительно добавив ее в список баз.
После этого уже можно опять использовать конфигуратор, но не старой, а новой базы данных, которую мы добавили, указав ее расположением localhost, т.е. наш SQL сервер и добавив ее в список ваших баз 1С.
Уже в этой новой базе необходимо выполнить почти те же действия в Конфигураторе, что и в начале статьи. То есть зайти в пункт Администрирование и выбрать пункт «Загрузить информационную базу». При загрузке необходимо выбрать файл выгрузки из файловой базы данных.
Таким образом вы сами можете осуществить, полный процесс преобразования и перехода из файловой базы 1С в SQL версию базы данных.
Посмотреть цены на сервера для 1С:
Рассмотрим процесс развертывания бэкапа на сервер БД MS SQL из файлового варианта работы СУБД 1С.
Минусы и ограничения файловой БД 1С, где база данных располагается в папке:
- В файловом варианте может работать всего несколько человек, если пользователей больше, то возникают блокировки данных при обращении к объектам БД, в следствии чего, некоторые пользователи не смогут выполнить одно и тоже действие одновременно, из-за блокировки регистров при проведении документов.
- В файловом варианте страдает безопасность, т.к. пользователи должны иметь полные права на папку, где лежит БД.
- В файловом варианте более медленная работа по сравнению с MS SQL (кластер и СУБД можно разнести на разные машины).
- Размер таблиц в файловом варианте не должен превышать размер 4ГБ.
01 Найдем через поисковик и скачаем 1cv8.3.10.2650_x86win.zip (можно скачать и более позднюю версию) 1С:Предприятие 8.3 с компонентами сервера на Windows. Выберем необходимые компоненты в начале установки:
02 Создадим пользователя от которого будут запускаться службы Сервера 1С:
03 После установки, заходим в Диспетчер задач, видим, что запустились 3 службы Сервера 1С:
04 Скачиваем через торрент Microsoft SQL Server 2017 14.0.1000.169 (RTM) и приступаем к установке через setup.exe:
Установка — Новая установка изолированного экземпляра SQL Server:
05 Откроется мастер установки, вводим лицензионный ключ, соглашаемся и Далее, до момента выбора устанавливаемых компонентов SQL, выберем Службы ядра СУБД (Management Studio в установщике отсутствует, поэтому установим его позже, отдельно. Если он у вас присутствует в списке, то установите на нем галочку):
06 Далее прописываем имя для SQL сервера:
07 Оставляем по умолчанию пользователей для запуска служб MS SQL:
08 Далее выбираем Смешанный режим, указываем пароль учетной записи системного администратора SQL (sa) и добавляем текущего пользователя как администратора SQL сервера:
После Далее и жмем Установить.
Во время установки MS SQL 2017 произошла ошибка «Не удается записать параметр NT SERVICE\SQLWriter в раздел \SYSTEM\CurrentControlSet\services\VSS\VssAccessControl…»
Чтобы исправить эту ошибку, нужно зайти в меню Пуск — Выполнить — набрать regedit, в консоле реестра пройти в ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\VSS и удалить папку VSS
Затем нужно запустить .bat файл и перезапустить ПК для пересоздания ветки реестра с VSS.
После всего, получили успешное завершение установки:
09 Отдельно устанавливаем Microsoft Server Management Studio (если не установили в пункте №5):
Автоматически откроется страница скачивания компонента (или перейдите сразу по прямой ссылке для скачивания https://go.microsoft.com/fwlink/?linkid=2014306). Ход установки:
10 Запускаем клиента 1С и добавляем новую БД через список подключений:Добавить — Создание новой информационной базы — Создание информационной базы без конфигурации… — указываем любое имя для отображения базы в списке подключений — выбираем На сервере 1С:Предприятия:
11 Далее заполняем теми данными, которые указывали при установке MS SQL Server, имена информационной базы в кластере и базы данных придумываем любые:
12 Зайдем в Management Studio и увидим подключение к СУБД SQL Server и жмем Соединить:
13 Слева в менеджере увидим пустую базу которую создали через список подключений в клиенте 1С:
14 Теперь заходим в консоль Администрирование серверов 1С Предприятия, раскрываем дерево серверов со списком БД (если не отобразился наш сервер 1С, то жмем «обновление»), здесь так же видим нашу пустую БД, которую создали через список подключений 1С:
15 Теперь, нужно загрузить в эту пустую БД наш бэкап из «файловой» 1С, который сделали ранее. Заходим в 1С, выбираем из списка нашу БД и запускаем ее в режиме Конфигуратор без логина и пароля, меню Администрирование — Загрузить информационную базу данных:
16 Выбираем ранее сохраненную БД с расширением .dt и жмем Открыть:
17 После завершения загрузки БД, выходим из Конфигуратора:
18 Запускаем БД в режиме 1С:Предприятие, теперь БД работает на сервере MS SQL Server 2017:
Прочитано: 8 632
Предыстория:
На следующей неделе я буду осуществлять переезд файловой базы 1С на связку кластер 1с + сервер базы данных и вот мне хочется уже заранее проработать все шаги в тестовых условиях прежде чем проходить все это в боевых и на боевой системе.
Как всегда данная заметка опирается на то, где я показал как создавать бекап файловой базы 1С на действующем терминальном сервере:
после этот заметки у меня на выходе имеется файл конфигурации базы (расширение *.dt)
Ниже шаги:
Подключаюсь по RDP к серверу (srv-bd3 под управлением Windows Server 2008 R2 Enterprise) где развернут сервис базы данных (установка аналогична заметке)
и в оснастке SQL Server 2014 Management Studio создаю новую базу данных.
Mstsc /v:srv-bd3
Start — All Programs — Microsoft SQL Server 2014 — SQL Server 2014 Management Studio, подключаюсь в текущую систему:
Server type: Database Engine
Server name: srv-bd3
Authentication: Windows Authentication
и нажимаю Connect, затем когда подключение оснастки sql management прошло успешно создаю новую базу данных:
srv-db3 (SQL Server 12.0.4213.0 — POLYGON\aollo) — и через правый клик мышью на Databases вызываю меню New Database…, далее заполняю поля создания новой базы данных:
Database name: alfa
Owner: Нажимаю Обзор (…) – Browse — отмечаю галочкой объект который будет владельцем данной базы, выбираю себя [POLYGON\aollo] и нажимаю OK, OK
После чего нужно предопределить согласно моей заметке параметры работы для 1С, повторяться по новой я не буду, как только все параметры буду предопределены нажимаю OK тем самым создается новая БД.
Отлично, теперь подключаюсь к серверу на котором у меня развернут кластер 1С и создаю новое подключение к созданной базе данных выше по данной заметки:
mstsc /v:srv-1c82-1c
Start — All Programs — 1C Предприятие 8.2 — Дополнительно — Администрирование серверов 1С Предприятия — Console Root — Central 1C:Enterprise 8.2 servers — srv-1c82-1c — Кластеры — 1541 — и через правый клик мышью по «Информационные базы» создаю новое подключение к информационной базе — New — Информационная база:
Имя: alfa
Описание: alfa
Защищенное соединение: выключено
Сервер баз данных: 10.7.7.100
Тип СУБД: MS SQL Server
База данных: alfa
Пользователь сервера БД: sa
Пароль пользователя БД: 712mbddr@
Разрешить выдачу лицензий сервером 1С:Предприятия: Да
и нажимаю после кнопку OK — если все параметры подключения указаны верно новая информационная база будет создана.
Теперь запускаю клиент 1С (8.2.19.121) в режиме конфигуратора на подключение к этой базы и к этому кластеру 1С. На хосте srv-1c82-1c проделываю:
Start – All Programs — 1C Предприятие 8.2 — Дополнительно — 8.2.19.121 — Конфигуратор и настраиваю подключение к информационной базе:
Список информационных баз пуст. Добавить в список информационную базу? – отвечаю Да
Укажите наименование информационной базы: alfa
Выберите вариант подключения к информационной базе: На сервере 1С:Предприятие
и нажимаю Далее
Кластер серверов 1С:Предприятия: srv-1c82-1c
Имя информационной базы в кластере: alfa
и нажимаю Далее
Вариант аутентификации: Выбирать автоматически
и нажимаю Готово
Итак подключение к информационной базе прописано в клиент 1С – теперь подключаюсь к этой базе в режиме «Конфигуратор», подключение проходит без какой либо аутентификации.
Теперь открываю меню «Администрирование» – Загрузить информационную базу — указываю путь до месторасположения выгруженного скриптом резервной копии (BazaAlfa_2016_06_05_23_05_08.dt) и нажимаю Open, на появившееся сообщение:
После загрузки информационной базы работа Конфигуратора будет завершена. Не сохраненные данные в открытых окнах могут быть потеряны. Продолжить? Отвечаю «ДА» и ожидаю покуда завершится процесс загрузки (чем больше файл dt тем дольше загрузка).
Ожидаю покуда окно «Конфигуратор — Конфигурация» не закроется автоматически само, но перед этим должно появиться всплывающее окно с вот таким вот текстом:
Информационная база успешно запущена.
Работа Конфигуратора будет завершена.
Перезапустить Конфигуратор?
Нажимаю Нет.
После того, как загрузка информационной базы из файловой резервной копии завершена я советую сделать бекап sql средствами.
А вот теперь когда бекап sql средствами готов можно уже прописать настройки подключения к кластеру 1С и базе пользователям, они же ничего и не заметят, т. к. для них ни каких существенных изменений не произойдет за исключением что понадобиться системный администратор который изменит настройки подключения, хотя и даже это можно сделать прозрачно всего лишь навсего подменить файл ibases.v8i на рабочих местах.
Проверяю, что могу авторизоваться в базе данных 1С (можно проверить как на клиентской станции так и на самом кластере 1С):
Start – All Programs — 1C Предприятие 8.2 — Дополнительно — 8.2.19.121 — 1С Предприятие (тонкий клиент) — настройки подключения уже имеются (я запускаю клиент 1с на кластере 1с) — 1С:Предприятие — предо мной предстает окно где нужно указать имя пользователя и его пароль на подключение к базе, в моем случае я ранее был заведен в административных целях в файловой базе, а потому идентифицируюсь:
Пользователь: aollo
Пароль: Aa1234567
и нажимаю «ОК» – подключение успешно проходит (как я и говорил выше пользователь не заметит разницы что было до и что стало после)
Вот видите в этом нет ничего сложного чтобы перенести файловую базу 1С на SQL‘ный вариант, достаточно попробовать в тестовых условиях и пройтись по всем шагам и уже последующий перевод в боевой среде для Вас (также как и для меня ранее) не будет таким пугающим. В целом я доволен полученным результатом, теперь как ранее я настрою план обслуживания и уведомления и работа с вот такими вот перенесенными базами 1С будет более продуктивной. В итоге план будущего переноса таков:
- На файловой базе 1С запускаю свой скрипт создания резервной копии
- Копирую резервную копию базу 1С (файл с расширением *.dt) на кластер 1С
- На сервере где развернут SQL Server создаю базу
- На кластере 1С подключаю созданную базу
- Подключаюсь клиентом 1С в режиме конфигуратор к заведенной в кластер 1С базе и импортирую в нее выгруженную базу из расширения (dt) и ожидаю.
Вот собственно и все что нужно сделать по переносу файловой работы с 1с на более быстрый и удобный в плане администрирования вариант работы. На этом я прощаюсь и до новых встреч, с уважением ekzorchik.
Продукты фирмы «1С» имеют два основных решения для хранения данных: файловая база данных и база данных, размещенная на SQL Server. В данной статье мы рассмотрим два варианта переноса баз данных 1С с сервера на сервер (с компьютера на сервер).
Если вам необходимо перенести базы 1С в облако, то мы можем сделать это бесплатно в рамках услуги аренда сервера 1С.
Вариант №1 – Перенос базы с помощью выгрузки .dt формата (применимо как к файловым базам, так и к серверным):
- Необходимо открыть базу, которую собираетесь переносить в режиме конфигуратора:
Скриншот 1. Окно со списком баз 1С
- В конфигураторе необходимо выбрать пункт меню «Администрирование» и «Выгрузить информационную базу»:
Скриншот 2. Режим конфигуратора
- В момент запуска процесса выгрузки конфигуратор предложит путь, куда нужно сохранить базу. Указываете путь и нажимаете сохранить.
Скриншот 3. Выбор директории для выгрузки
- Как только конфигуратор закончит выгрузку базы данных, он выдаст информационное окно, что выгрузка информационной базы завершена.
Скриншот 4. Информационное окно, что всё прошло успешно
- Готовая выгрузка для переноса на другой сервер.
Скриншот 5. Выгрузка в выбранной нами папке
- Переносим файл формата .dt с сервера на сервер любым удобным для нас способом (с помощью флэш-накопителя, через облако).
- После того как перенос базы выполнен нам необходимо создать пустую базу и загрузить в неё нашу выгрузку (в нашем примере мы примере мы создадим пустую файловую базу).
- Создание базы данных происходит следующим образом (согласно скриншотам).
Скриншот 6. Окно добавления информационной базы
Скриншот 7. Окно добавления информационной базы
Скриншот 8. Окно добавления информационной базы
Скриншот 9. Окно добавления информационной базы
Скриншот 10. Окно добавления информационной базы
- Далее заходим в нашу базу в режиме конфигуратора.
Скриншот 11. Окно со списком баз 1С
- Во вкладке администрирование выбираем пункт «Загрузить информационную базу», указываем путь и выбираем нашу выгрузку.
Скриншот 12. Режим конфигуратора
Скриншот 13. Директория где находится перенесенная нами выгрузка
- Конфигуратор выдаст нам следующее окно. Нажимаем «Да».
Скриншот 14. Диалоговое окно в режиме конфигуратора
- Наша выгрузка успешна загружена в нашу пустую базу. Перенос базы выполнен, о чем нам рапортует конфигуратор.
Скриншот 15. Диалоговое окно в режиме конфигуратора
Вариант №2. Перенос базы данных 1с SQL.
- Заходим в Microsoft SQL Server Management Studio (MSSMS), вводим уч.данные администратора баз данных.
- Далее кликаем правой кнопкой мыши по базе, которую нужно перенести и выбираем пункт «Создать резервную копию…».
Скриншот 16. Консоль администрирования MS SQL
- Во вкладке общее выбираем тип архивной копии «Полная» и назначение «Диск» и нажимаем кнопку «Добавить».
Скриншот 17. Окно «Резервное копирование базы данных»
- Выбираем путь, тип резервной копии «.bak» и назначаем имя нашему бэкапу.
Скриншот 18. Окно с выбором пути для бэкапа базы
- Во вкладке «Параметры носителя» в графе «Надежность» кликаем в чекбокс «Проверить резервную копию после завершения», для того чтобы быть уверенным в том, что резервная копия будет корректной.
Скриншот 19. Окно «Резервное копирование базы данных»
- Для того, чтобы уменьшить размер нашего бэкапа базы 1С во вкладке «Параметры резервного копирования» в графе «Сжатие» выбираем опцию «Сжимать резервные копии» и нажимаем «ОК». Далее пойдет процесс выполнения бэкапа.
Скриншот 20. Окно «Резервное копирование базы данных»
- Как только бэкап нашей базы будет создан появится информационное окно:
Скриншот 21. Информационное окно
- Далее переносим нашу базу на новый сервер любым удобным для нас способом.
ВАЖНО! В нашем примере мы не учитываем совместимость MS SQL серверов. Для того, чтобы бэкап базы данных успешно развернулся на новом сервере, версия MS SQL сервера должна быть либо такой же, либо выше (режим обратной совместимости), чем на старом сервере.
- Далее, на новом сервере, создаем базу таким же образом как и в первом варианте, который мы рассматривали ранее, с одним различием – на этапе добавления информационной базе выбираем тип расположения информационной базе «На сервере 1С:Предприятия»:
Рисунок 22 – Добавление ИБ
- Вводим адрес кластера нашего нового сервера 1С, название базы и учетные данные пользователя базы данных. В нашем примере это выглядит следующим образом:
Рисунок 23 – Добавление ИБ
- Рассматриваемый нами способ один из самых быстрых – так мы создаем базу и в кластере 1С и на сервере MS SQL.
- Далее подключаем бэкап нашей базы через консоль сервера MS SQL (Microsoft SQL Server Management Studio).
Работа с информационными базами 1С может происходить в нескольких режимах: файловом, файлово-сетевом и клиент-серверном. Каждый из них имеет ряд преимуществ и будет удобен в зависимости от запросов пользователя. Сегодня рассмотрим клиент-серверный вариант работы с информационной базой 1С.
Перенос файловой базы 1C на сервер SQL включает несколько этапов.
- Выгрузка информационной базы.
Первым шагом выгрузим файловую информационную базу, которую мы хотим перевести на SQL. Выбираем из списка информационных баз интересующую нас файловую базу и открываем ее в режиме Конфигуратор. В конфигураторе переходим во вкладку Администрирование – Выгрузить информационную базу.
Результатом выгрузки является файл с расширением dt.
2. Создание базы данных в Microsoft SQL Server Management Studio.
На сервере запускаем Microsoft SQL Server Management Studio. Вводим необходимые данные для авторизации и нажимаем — Соединить.
После успешного подключения в левой части экрана появится окно «Обозреватель объектов». Выбираем создать базу данных.
В появившемся окне придумываем имя для базы данных и нажимаем — Ок.
Созданная база данных появится в списке.
3. Создание базы данных в кластере.
Запускаем консоль администрирования серверов 1С. Данную компоненту программы можно установить в процессе установки Платформы 1С. Создаем новый кластер.
На данном этапе создадим информационную базу в кластере.
Выбираем информационные базы – Создать информационную базу. Открывается окно создания новой информационной базы. Указываем имя информационной базы. При желании добавляем описание. В пункте Сервер баз данных указываем имя кластера 1С. Выбираем тип СУБД – MSSQL Server. В поле База данных указываем название информационной базы, ранее созданной в Microsoft SQL Server Management Studio. В полях Пользователь сервера БД и Пароль пользователя БД указываем логин и пароль от администратора СУБД SQL.
Нажимаем Ок – база данных в кластере создана.
4. Добавление информационной базы в список.
После того, как база данных в кластере создана добавляем ее в список существующих информационных баз.
Далее указываем наименование информационной базы и выбираем тип расположения информационной базы — на сервере 1С:Предприятия. Прописываем в соответствующие поля имя кластера и имя информационной базы в кластере.
5. Загрузка информационной базы
После того, как база будет добавлена в список информационных баз запускаем ее в режиме Конфигуратор. Переходим на вкладку Администрирование – Загрузить информационную базу и загружаем файл с расширением dt.
На данном этапе перевод информационной базы из файлового режима на SQL сервер завершен.
Специалисты компании «1С:БИЗНЕС РЕШЕНИЯ» помогут вам освоить все возможности программ 1С, проведут бесплатную демонстрацию и ответят на все вопросы!
Если у вас остались вопросы или хотите проконсультироваться, то вы всегда можете обратиться к нам по телефону +7 (3532) 43-05-17.
Наша линия поддержки в 1С-Коннект:
