SQL

Если конфигурация долго открывается, долго открываются и проводятся документы, если периодически выскакивают ошибки «Нарушена целостность базы данных» или «Файл базы данных поврежден», файл ИБД *.1CD имеет объем более 5ГБ или планируется рост пользователей, переход на SQL неизбежен. При высокой отказоустойчивости и поддержке бесконечно большой базы данных SQL-сервер дает возможность одновременной работы большому числу пользователей.Если переход все же вызывает некоторые колебания, стоит учесть, что преимуществ у клиент-серверного варианта значительно больше, чем недостатков, а у файлового – наоборот.

С чего начать перенос базы:

1)Проверить целостность базы данных по средствам программы chekdbfl.exe и произвести тестирование и исправление в конфигураторе. Далее Выгрузить БД в *.dt файл.

SQL

2)Во время установки Postgresql (обязательно берем версию с портала 1С:ИТС, она уже модифицирована, чистая от oracle не будет работать с 1С сервером кластеров)  задаем пароль для пользователя postgres (является админской учетной записью для субд) понадобится при подключении субд к кластеру 1с сервера.

3)Устанавливаем MSSql в ходе установке обязательно указываем смешанный режим задаем пароль учетной записи админа (sa) субд с режимом проверки подлинности windows 1с сервер кластеров работать не будет.

4)Устанавливаем 1С enterprise при установке выбираем ручной режим и добавляем модуль 1С сервер и администрирование сервера 1С предприятия.

5)Запускаем администрирование сервера 1С предприятия и создаем центральный сервер 1с предприятия в поле имя указываем: localhost,127.0.0.1, сетевое имя компьютера. На ваш выбор любой из вышеперечисленных вариантов порт оставляем стандартный.

6)Далее запускаем 1С предприятие нажимаем добавить выбираем пункт создание новой информационной базы, создание информационной базы без конфигурации,указываем имя базы и ставим галочку на сервере 1С предприятия,

В кластер серверов и сервер баз данных вписываем ранее указанное имя из пункта 4, имя информационной базы в кластере и имя базы данных указываем то что указали ранее в этом пункте пользователь баз данных указываем для MSSql: sa, для postgresql: postgres  пароль тот что присвоили в пунктах 2 или 3. Выбираем тип субд который у вас установлен.

Также ставим галочку создать базу данных в случае ее отсутствия.

7) Заходим в 1с предприятие и запускаем новую базу в режиме конфигуратора, в конфигураторе выбираем загрузить базу данных, и загружаем базу копию которой создали в самом начале этой статьи.Файлы базы находятся по адресу:

a)Для Microsoft SQL — “ C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\“имя базы”.mdf”.

б)Для PostgreSQL — “C:\Program Files\PostgreSQL\ “версия скачанной Postgresql с сайта”.1C\data\base\ “папка с пятизначным номером(номер присваивается рандомно ищите по дате создания папки она будет соответствовать дате создания базы)”.

По выше указанным путям можно сделать бекап базы данных в любой момент времени даже если с ней работают пользователи, либо настроить программу для автоматического бэкапа по указанному времени например Cobian backup.

На этом процесс создания и установки завершен.Переходим к тестам.

Тесты

1) Проведем четыре сравнительных теста, формирование отчета за большой период, выгрузку и тестирование и исправление базы данных, многопоточное тестирование производительности сервера 1С — СУБД, получившиеся результаты сравним(для выгрузки и тестирования и исправления необходимо зайти в администрирование серверов предприятия 1С выбрать вашу базу данных щелкнуть на нее правой клавишей мыши и выбрать свойства, система запросит логин и пароль необходимо ввести учетку администратора базы 1С , а не SQL сервера. Далее установить опцию Блокировка регламентных заданий включена). 

Тестовая конфигурация:

       Процессор: Intel Celeron E1400 2Ггц

       Оперативная память: DDR 3 4Гб

       Жесткий диск: SATA Seagate Barracuda ST3160815AS 160GB 7200 RPM 

       База 1С:Бухгалтерия: Файловая — 5,28 Гб; MSQL — 4,74 Гб; PSQL — 5,09 Гб.

2) Формирование отчета оборотно-сальдовой ведомости по счету 41.01 за 3 года 

     Файловая 1С — 9 минут

    PSQL — 5 минут

    MSQL — 5 минут

3)Выгрузка базы в *.DT файл

    Файловая 1С — 14 минут

    PSQL — 12 минут

    MSQL — 11 минут

4)Тестирование и исправление базы:

    Файловая 1С — 6ч. 26 минут

    PSQL — 3ч. 42 минуты

    MSQL — 2ч. 46 минуты

5)Многопоточное тестирование производительности сервера 1С — СУБД

    PSQL 

 MSQL

В многопоточном режиме PostgreSQL немного опережает конкурента но разница совершенно несущественная.Но стоит учесть, что система слабая и максимально только 32 потока на более мощном железе и при потоке в 200 пользователей ситуация поменяется в пользу MSQL(если обе субд работают под управлением windows).

Стоимость перехода на SQL

1)Стоимость перехода с файловой версии на SQL будет складываться из стоимости 1С:Предприятие лицензия на сервер и количества клиентов (пользователей) к ней подключающихся, а также стоимости лицензии на SQL.

2) Для базы данных построенной на PostgreSQL необходимо приобрести только лицензию на 1С:Предприятие лицензия на сервер стоимостью 86 400 рублей за 64-х разрядную версию 8.3  (лицензия програмная не USB) плюс 6 300 рублей за каждого пользователя если их нет(ранее не были приобретены).Сам PostgreSQL распространяется бесплатно и как упоминалась ранее доступен для скачки на сайте 1С.

3)Для базы данных на  Microsoft SQL помимо лицензий на 1С сервер необходимо отдельно приобрести лицензию на базу данных Microsoft SQL и пользователей к ней подключающихся. Но тут можно сэкономить если взять  Runtime лицензию которая разрешает установку только 1С баз но для данной статьи других и не надо. И так стоимость такой лицензии для MS SQL Server Standard 2016 Runtime составит 18 600 рублей, а лицензия для каждого пользователя по 9 400 рублей.

Вывод

Стоит ли переходить с файловой базы на SQL? Если база невелика и одновременно РАБОТАЮЩИХ пользователей не более пяти то наверное нет, но если база перевалила за 5Гб и трудятся в ней десяток человек то однозначно да, на решения с использованием PostgreSQL, ведь стоимость самой лицензию на 1С сервер не заоблачная, а клиентские лицензии и так уже куплены и PostgreSQL бесплатен. К тому же как  видно из тестов разрыв между  PostgreSQL и Microsoft SQL незначительный. Кому же тогда нужен Microsoft SQL? Если говорить про 1С то там это решение не самое популярное, но если используется то в сверхмассивных базах с огромным количеством пользователей либо там где необходимо определенное удобство в обслуживании, ведь интерфейс и удобство в работе с  Microsoft SQL в разы выше PostgreSQL (личное мнение автора). Но при выборе платформы решать руководителю предприятие (ну или если он очень доверяет сотрудникам которые попытаются его переубедить в необходимости переплаты за решение от Microsoft) т.к. финансовая составляющая перехода от платформы к платформе играет если не самую то очень важную роль. 

Популярные товары

Один комментарий к “Когда нужно переходить с файловой базы 1С на SQL?”

  • Из статьи понял что скл подходит больше для среднего и малого бизнеса это так?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *