Как перевести базу 1с из sql в файловую
Файл с расширением *.bak – это резервная копия 1с выгруженная из 1с сервера. Иногда системный администратор или программист 1с не имеет возможности выгрузить резервную копию через конфигуратор. Так же бывают случаи, когда требуется произвести “холодное копирование” без выхода пользователей из базы данных программы. Для этого используют программу управляющую базами данных в формате SQL – microsoft SQL Manager Studio. Данная программа может быть установлена на ваш компьютер или сервер только в том случае, когда ваша информационная база имеет структуру SQL.
Как производится выгрузка базы данных в формате BAK?
- Заходим в Microsoft SQL Manager Studio. Для входа используем требуемый тип авторизации, указываем пользователя и пароль обладающего правами редактирования и выгрузки ИБ (обычно имя такого суперпользователя SA, а пароль задается при установки данной программы);
- Во вкладке Базы данных выбираем нужную базу данных и кликаем по ней правой клавишей мышки.
- В появившемся контекстом меню выбираем пункт Задачи – Создать резервную копию.
- В новом окно оставляем все настройки по умолчанию. Обращаем внимание на путь, по которому сохраниться выгружаемый нами backup.
- База данных выгружена, можем загрузить её на другой компьютер с установленным ранее MS SQL серверов и сервером 1с предприятия.
Важно обратить внимания что MS SQL Server бывает разных версий (2008, 2012, 2016, 2019) и пункты меню могут отличаться.
Как преобразовать копию 1С в формате bak в DT или 1CD?
Если нам прислали копию базы в формате *bak и нам следует конвертировать этот файл в формат 1С (*dt или *.1CD) для этого нам потребуется ряд программ.
Microsoft SQL Manager Studio
Сервер 1С предприятия
После установки вышеперечисленного ПО в программе Администрирование серверов 1с предприятие мы можем создать новую информационную базу. После этого, зайдя в MS SQL Manager Studio можем выбрать данную базу и загрузить в неё bak файл. Слепок базы можно добавить в платформу 1С предприятие и выгрузить через конфигуратор.
Позже мы добавим ссылку на подробную инструкцию по загрузке и конвертированию данного файла.
Как известно программа 1С имеет две основных архитектурных реализации касательно хранения данных: файловая версия и версия на СУБД. Все знают, что файловая база подходит для работы нескольких пользователей малого предприятия, при условии что сама база также не большая, а для средних и крупных предприятий без СУБД не обойтись. Также очень типичны случаи, когда ведение учета начинается в небольшой файловой базе, а далее она начинает стремительно расти – увеличивается количество бизнес-процессов, которые автоматизируют данной программой, в следствии чего увеличивается количество пользователей, которые в ней работает, а также сама база. Со временем база начинает притормаживать и наступаем момент когда необходимо переходить на СУБД. Как же определить тот момент, когда стоит задуматься о переходе на SQL? Ведь сам переход и подготовка для него инфраструктуры требует немало времени, а также денежных затрат.
Предпосылки, которые заставляют задуматься о переходе на СУБД следующие:
- Блокировки. Основной и самой важной предпосылкой перевода 1С на СУБД есть возникновение ошибок блокировки данных. Дело в том, что при работе с файловой базой таблицы с данными хранятся в файлах, и нет возможности параллельного доступа к ним нескольких пользователей в один момент времени.
Если в базе работает от 1 до 5 пользователей, то данная проблема практически не заметна, так как вероятность того, что в один момент времени к одной и той же таблице обратятся несколько пользователей невелика, но с каждым дополнительным пользователем эта вероятность возрастет.
Это что касается симптомов, которые могут указать на необходимость перехода.
Теоретически момент перехода возможно просчитать заранее. Производительность 1С зависит от 3 ключевых факторов:
- количества пользователей;
- типа конфигурации;
- объема базы.
Основным показателем, который влияет на производительность базы 1С является количество пользователей работающих с базой. Файловая база при количестве пользователей от 1 до 5 работает значительно быстрее чем СУБД и в таком случаи перевод на SQL повлечет не только дополнительные затраты, но и ухудшение работы системы.
При количестве пользователей порядка 5-10 работа файловой базы отличается от работы СУБД не значительно, после 10-15 пользователей производительность файловой базы очень сильно падает и если количество пользователей довести до 20-25 с базой практически не возможно будет работать по причине блокировок и очень сильному замедлению работы. Ниже приведены графики зависимости производительности 1С от количества пользователей для разных конфигураций.
Рисунок 1 - Схема работы с зашифрованной базой данных
Также весомой характеристикой базы есть ее размер, в случае, если файловая база занимает более 1 Гб данных, ее целесообразно перевести на СУБД.
Повышение скорости работы 1С, отказоустойчивости системы.
Программные продукты фирмы 1С имеют два основных формата хранения базы данных: файловая база данных и база данных, размещенная на SQL Server средствами СУБД
В список поддерживаемых СУБД входят:
- Microsoft SQL Server
- PostgreSQL
- Oracle Database
- IBM Db2.
Файловые базы данных, как правило, используют небольшие компании с 1-5 пользователями, где нет большого объема документооборота, а также не произойдет быстрого роста объема базы данных.
Когда нужно переходить с файловой базы 1С на СУБД MS SQL?
Если конфигурация долго открывается и также долго открываются и проводятся документы, если периодически выскакивают ошибки «Нарушена целостность базы данных» или «Файл базы данных поврежден», файл ИБД *.1СD имеет объем более 5ГБ, планируется рост пользователей или в результате внедрения еще одной конфигурации 1С планируется достаточно быстрый рост объема данных, пора задуматься о вопросе, как перенести файловую базу 1С на SQL поскорее и узнать, что такое сервер 1С.
Преимущества SQL
Если переход все же вызывает некоторые колебания, стоит учесть, что преимуществ у клиент-серверного варианта значительно больше, чем недостатков, а у файлового – наоборот.
При высокой отказоустойчивости и поддержке бесконечно большой базы данных SQL-сервер дает возможность одновременной работы большому числу пользователей. Конечно, наиболее мощные СУБД – MS SQL Server/Oracle стоят недешево, но бесплатный вариант PostgreSQL также широко используется в среде 1С. Да, SQL требует настройки сервера 1С и администрирования, но подобные услуги оказывает широкий круг компаний-франчайзи 1С, и конечно же – наша.
Работа с файловой базой плохо защищена, потому что доступ к копированию файла БД открыт любому пользователю, плохо масштабируется и начинает «тормозить», когда пользователей становится больше пяти из-за высокого уровня изоляции транзакций, а также имеет ограничения по размеру в 5-10 Гб. При этом отдельные функции конфигурации при таком варианте просто не работают (к примеру, регламентные задания).
Да, быстрая настройка, отсутствие дополнительного ПО и низкая цена – весьма привлекательные «черты» файловых БД, но выбор в их пользу может иметь место только при построении самой простой информационной системы.
Этапы перехода на внешнюю СУБД
Для переноса файловой базы 1С 8.3 на сервер SQL проделаем следующие шаги:
Шаг №1 Выгрузка ИБ
Откроем конфигуратор файловой версии базы 1С.
В конфигураторе выбираем пункт меню «Администрирование» и «Выгрузить информационную базу».
Итогом процесса выгрузки будет файл *.dt.
Шаг №2 Создание кластера
Для данного пункта запустим консоль управление сервером 1С.
Важно: Для работы сервера 1С обязательно требуется установка лицензии на сервер 1С.
Лицензия бывает 32х-разрядная и 64х-разрядная. Разрядность определяет количество ОЗУ доступное серверу 1С: у 32х до 4ГБ, а 64х более 4ГБ.
Для уточнения цен, подбора сервера для 1С с учетом плановых нагрузок и форматов обслуживания таких систем обратитесь к нашим специалистам. Мы с радостью подберем для вас подходящее решение.
В открывшемся приложении выберите «Кластер-Создать кластер», а если кластер уже создан, выберите существующий.
Шаг №3 Создание базы данных в кластере
Следующим шагом в процессе миграции базы 1С будет создание новой конфигурации в кластере. Существует два возможных варианта создания базы 1С на сервере 1С:
- Через консоль администрирования кластера 1С;
- Через окно запуска 1С:Предприятие.
Создание информационной базы в кластере через консоль администрирования кластера 1С
Чтобы создать базу 1С в СУБД SQL, выбираем «Создание новой информационной базы» и заполнить обязательные поля:
- Имя – название вашей базы 1С;
- Сервер баз данных – указываем имя кластера 1С;
- База данных – название базы данных в вашей СУБД SQL;
- Пользователь сервера БД – логин от администратора СУБД SQL;
- Пароль сервера БД – пароль от администратора СУБД SQL.
Далее добавляем эту ИБД в список 1С для последующего запуска конфигуратора 1С и загрузки ранее подготовленного файла выгрузки базы. После того как база в кластере создана, добавляем ее в список баз 1С. Для этого запускаем 1С:Предприятие и «Добавить…» базу 1С.
Далее выбираем «Добавление в список существующей информационной базы» и переходим «Далее».
После появления формы добавления базы 1С, заполняем последние строки в списке и переключаем режим работы на «На сервере 1С:Предприятие».
Запуск 1С:Предприятие и добавление конфигурации
Этот способ быстрее предыдущего и бывает полезен, когда, например, вы не установили у себя компоненту консоли управления при установке платформы. Чтобы им воспользоваться, запускаем 1С:Предприятие и в открывшемся окне приложения жмем кнопку «Добавить».
Далее выбираем «Создание информационной базы».
После перехода в следующий пункт меню выбираем « Создание информационной базы без конфигурации для разработки новой конфигурации» или «Загрузки выгруженной ранее информационной базы».
Следующим шагом будет выбор пункта «На сервере 1С:Предприятие».
Мы попадем в искомое нами окно заполнения полей для создания базы на сервере 1С.
Шаг №4 Завершение переноса
Перенос базы 1С на SQL-сервер
Поможем определить необходимость переноса базы 1С на SQL и подготовить инфраструктуру
Перенос данных 1С
Переходите на новую программу 1С? Проведем бесплатный анализ и перенесем только необходимые данные
После запуска конфигуратора переходим в раздел «Администрирование» и выбираем пункт «Загрузить информационную базу».
Далее выбираем ранее сохраненный файл выгрузки и начинаем непосредственно процесс загрузки базы на СУБД SQL.
Готово! Ваша конфигурация успешно переведена из файлового режима на SQL-сервер.
Если повторная работа в конфигураторе не требуется, выбираем вариант «Нет» и запускаем базу в режиме «Предприятия» для проверки ее работоспособности.
Мы рассмотрели процесс миграции файловой базы на сервер 1С. Если в будущем вам потребуется перенос базы 1С SQL на другой сервер или у вас остались вопросы по этому переводу, обратитесь к нашим специалистам за консультацией, мы с радостью вам поможем.
Продукты фирмы «1С» имеют два основных решения для хранения данных: файловая база данных и база данных, размещенная на SQL Server (поддерживается как Microsoft SQL Server, так и бесплатный PostgreSQL, Oracle Database, IBM Db2). Файловые базы данных как правило используют небольшие компании с 1-10 пользователями, при этом быстрого роста объема базы данных в среднесрочной перспективе не предвидится. Если у Вас “тормозит база 1С”, вы постоянно отмечаете рост пользователей или на этапе проектирования решения Вы рассчитываете на достаточно быстрый рост объема данных, Вам пора задуматься о переезде файловой базы 1С на SQL Server.
Как перенести файловую базу 1С в SQL?
Перенос базы 1С производится в режиме 1С “Конфигуратор”.
Для переноса файловой базы на сервер SQL необходимо выполнить следующие действия:
-
Открыть конфигуратор файловой базы.
Особые указания для настройки портов:
- Выбор портов осуществляется из диапазона от 10 000 до 60 000.
- Нужно исключить переключение с другими диапазонами.
- Пример выбора диапазонов: “ 23560:23591, 12560:12591”.
- Управляющий порт для работы из оснастки: 23540.
- Порт подключения из 1С: 23541.
- Пример подключения к кластеру 1С: “:23541; :23541”. Все настройки подключения к базам храниться здесь: *\Users\%username%\AppData\Roaming\1C\1CEStart\ibases.v8i
Создание специальных служб
- Запускаем командную строку от имени Администратора
- Команда: Sc create ="C:\Program Files\1cv8\8.3.4.465\bin\ragent.exe" DisplayName= type= own start= auto
- Вводим в командной строке команду “regedit”
- Находим строку
- Редактируем строку “ImagePath”
- Приводим строку “ImagePath” к виду: "C:\Program Files\1cv8\8.3.5.1098\bin\ragent.exe" -srvc -agent -regport 23541 -port 23540 -range 23560:23591 -d
Создание кластера 1С 8.3
Настройка кластера 1С 8.3:
Первый способ создания базы данных
Название базы в кластере 1С и на SQL сервере могут быть разные.
Заходим в директорию кластеры/локальный кластер/New/информационная база.
Указываем параметры информационной базы:
При отдельном сервере приложений 1С, адрес сервера баз данных может быть прописан в hosts.
Второй способ создания базы данных
Нажимаем кнопку “Добавить”.
Выбираем пункт “Создание информационной базы”.
Когда мы рекомендует перенос файловой базы на клиент-серверный вариант
Наша практика показывает, что файловые базы данных являются оптимальным решением, пока объем базы не превысил 3 Гб.
Читайте также: