Переезд 1С на новый сервер: от аудита до отключения старого
Содержание
Поменять сервер 1С можно за один вечер, если не копировать «всё подряд», а переносить по частям: сначала то, что влияет на запуск (платформа, лицензии, СУБД), потом данные, потом подключения людей. Самая частая ошибка — скопировать папку с базой и удивляться, что на новой машине ничего не стартует.
Перенос зависит от того, как у вас устроена база. Файловая переезжает копированием каталога. Клиент-серверная требует переноса кластера 1С, базы в СУБД и лицензий. Ниже оба сценария, плюс то, что чаще всего забывают: ключ защиты, ярлыки у пользователей и публикацию на веб-сервере.
Что проверить до переезда: аудит старого сервера
Сначала выясните, что именно стоит на старой машине. Через год работы там накапливается больше, чем вы помните.
Составьте список:
- 🖥 Версия платформы 1С на сервере и у клиентов. Точный номер вида 8.3.xx.xxxx смотрите в окне «О программе» или в каталоге установки.
- 🗄 Вариант работы баз: файловый или клиент-серверный. Для клиент-серверных — какая СУБД (MS SQL или PostgreSQL) и её версия.
- 🔑 Лицензии: программные или аппаратные (USB-ключ), на сервер или на рабочие места, сколько подключений.
- 🌐 Публикации на веб-сервере: есть ли внешний доступ, веб-клиент, HTTP-сервисы, обмены.
- ⏰ Регламентные задания: резервное копирование , обмены, скрипты, задачи планировщика Windows.
- 🔗 Внешние обработки, ресурсы и файлы: папки с вложениями, отчёты, сетевые диски.
Для клиент-серверного варианта отдельно запишите:
| Что записать | Где посмотреть |
|---|---|
| Имя кластера и порты | консоль администрирования серверов 1С |
| Список информационных баз | та же консоль, ветка «Информационные базы» |
| Имя базы в СУБД, сервер СУБД | свойства информационной базы в кластере |
| Учётная запись, от имени которой работает служба | оснастка «Службы» Windows |
| Каталог данных кластера | параметр запуска службы агента сервера |
Сделайте снимок экрана консоли кластера и сохраните рядом с планом переезда. Через два часа в разгар переноса он избавит от гаданий.
Теперь подберите новую машину. Для ориентира: в обычном учётном сценарии на 10–20 одновременных пользователей достаточно 4–8 ядер, 16–32 ГБ памяти и SSD под базу и журнал транзакций. Если база растёт быстро, берите диск с запасом на пару лет. Деньги на диск тут экономят хуже всего.
Не меняйте платформу и сервер одновременно. Если это возможно, ставьте на новый сервер ту же версию платформы, что работала на старом. Обновление делайте отдельным шагом после того, как всё заработало. Иначе при сбое непонятно, что виновато: железо, платформа или конфигурация.
Перенос файловой базы на другой компьютер
Это самый простой случай. Файловая база — это каталог с файлом 1Cv8.1CD и служебными файлами.
- Предупредите пользователей и убедитесь, что никто не работает в базе. Проверьте список сеансов или просто попросите всех закрыть 1С.
- Откройте базу в режиме Конфигуратора, выберите «Администрирование — Выгрузить информационную базу» и сохраните файл
.dtкак страховку. - Закройте всё. Скопируйте каталог с базой целиком на новый компьютер. Копируйте именно папку, а не только
1Cv8.1CD. - На новом сервере положите каталог в то место, куда будут обращаться пользователи: сетевая папка с общим доступом.
- Выдайте пользователям права на чтение и запись в эту папку, включая создание и удаление файлов. Без права удаления сеанс падает на блокировке.
- Запустите 1С на новом компьютере, добавьте базу в список (кнопка «Добавить», «Добавление существующей информационной базы») и откройте её.
Проверьте, что файловая база не работает через общий диск по медленной сети, особенно по Wi-Fi или VPN. Это путь к зависаниям и повреждению файла.
Не копируйте файл базы, пока кто-то с ней работает. Копия может оказаться «битой», и это вскроется только через неделю.
Если пользователей больше 10–15 или база разрослась до десятков гигабайт, переезд на новый сервер — удобный повод перейти на клиент-серверный вариант. Сделайте это через выгрузку .dt и загрузку в новую клиент-серверную базу
, это описано в следующем разделе.
Переезд клиент-серверной базы: кластер 1С и SQL
Здесь переносятся две вещи: сервер 1С и СУБД. Они могут стоять на одной машине или на разных.
Способ 1. Выгрузка и загрузка через .dt
Самый чистый и безопасный. Подходит, если база небольшая (до нескольких десятков гигабайт) и допустимо остановить работу на пару часов.
- На старом сервере заблокируйте вход пользователей в консоли кластера.
- Откройте базу в Конфигураторе и выгрузите её в
.dt. - Установите на новый сервер платформу 1С с компонентой «Сервер 1С:Предприятия» и убедитесь, что служба агента запущена.
- Создайте в новом кластере пустую информационную базу. Укажите сервер СУБД, имя базы и параметры создания.
- Через Конфигуратор загрузите
.dtв новую базу.
Плюс: база приходит «чистой», без накопленного мусора в СУБД. Минус: на больших базах выгрузка и загрузка идут долго.
Способ 2. Перенос через резервную копию SQL
Быстрее для больших баз. Работает, пока версия СУБД на новом сервере не ниже, чем на старом.
- Остановите работу пользователей и сделайте полную резервную копию базы
средствами СУБД. В MS SQL это
.bak, в PostgreSQL — дамп черезpg_dump. - Перенесите файл копии на новый сервер.
- Восстановите базу на новом сервере СУБД. Для MS SQL проверьте, что параметры сортировки (collation) совпадают с теми, что были у исходной базы.
- В консоли нового кластера создайте информационную базу, указав уже существующую базу в СУБД и не создавая её заново. Снимите флажок создания базы, если он стоит.
- Назначьте учётной записи, от имени которой работает сервер 1С, права на базу в СУБД.
Для PostgreSQL используйте сборку, которую поставляет 1С для вашей версии платформы. Обычный PostgreSQL из репозитория может не подойти и работать нестабильно.
Что сравнить в двух способах
| Способ | Когда подходит | Риски |
|---|---|---|
.dt | небольшая база, можно остановиться на 1–3 часа | долгая загрузка на больших объёмах |
| Копия SQL | большая база, нужен короткий простой | несовпадение версии СУБД или collation |
| Оба параллельно | критичный переезд | лишняя работа, зато есть откат |
Если переезд критичный, сделайте обе копии: .dt и резерв СУБД. Если одна не восстановится, вторая спасёт.
Если сервер 1С переезжает вместе с кластером
Есть соблазн скопировать каталог кластера (srvinfo) со старого сервера на новый. Так делают, когда баз много и вручную их пересоздавать не хочется. Работает это только при совпадении версии платформы и имён. Каталог копируется при остановленной службе. Если версия платформы новая, перенос кластера может не завестись, и придётся пересоздавать базы вручную. Для небольшого числа баз проще создать кластер заново.
Лицензии и ключ защиты: как не остаться без подключений
Именно здесь переезды чаще всего встают. Лицензия привязывается к конкретному оборудованию.
Что происходит в разных случаях:
- 🔑 Аппаратный ключ (USB). Вставьте его в новый сервер, установите драйвер защиты, проверьте, что ключ виден. В кластере сервер 1С находит его сам, если драйвер работает и служба запущена.
- 💻 Программная лицензия. Она привязана к параметрам машины. После смены сервера её нужно получить заново. Процедура зависит от типа лицензии и описана у производителя, вам понадобятся регистрационный номер комплекта и пин-код. Если пин-коды израсходованы, обратитесь к партнёру, который продал лицензию.
- 🏢 Клиентские лицензии. При клиент-серверном режиме они считаются на стороне сервера. Проверьте, что количество доступных подключений совпадает с купленным.
Если сервер лицензирования стоит отдельно от сервера 1С, то после переезда проверьте, что новая машина видит его по сети и нужный порт не закрыт.
Не удаляйте лицензию на старом сервере, пока новый не заработал. Иначе при сбое откат окажется невозможным.
Проверить результат можно в консоли кластера: в списке сеансов видно, какие лицензии заняты. Если подключение отказывается с сообщением о нехватке лицензий, значит сервер не видит ключ или лицензия не активирована.
Как переключить пользователей на новый сервер
Переезд завершён только тогда, когда люди заходят в новую базу, а не в старую. Здесь начинается тихая катастрофа: часть пользователей продолжает работать на старой базе, и данные расходятся.
Чтобы этого избежать:
- Сначала закройте старую базу. В консоли кластера запретите подключения к ней и добавьте сообщение с адресом новой.
- Обновите список баз. В окне запуска 1С выделите старую запись и измените её: у клиент-серверной базы строка подключения выглядит как
Srvr="имя_сервера";Ref="имя_базы";. Меняете имя сервера, остальное оставляете. - Если у вас много компьютеров, не правьте вручную. Список баз хранится в файле
ibases.v8i. Можно разослать общий файл списка через групповые политики или настроить единый список по сетевому пути. - Проверьте внешние обращения: веб-клиент, мобильное приложение, обмены с другими базами и интеграции с сайтами. Они обращаются по прежним адресам и не знают о переезде.
- Если имя сервера в DNS менялось, самый аккуратный способ — оставить для нового сервера старое имя. Тогда ярлыки и подключения менять не придётся.
Веб-публикации настраиваются заново: на новом сервере опубликуйте базу, проверьте файл default.vrd и права веб-сервера на каталог публикации. Адрес сохраните прежним, иначе придётся менять ссылки во всех внешних системах.
Если на старом сервере были регламентные задания 1С (обмены, закрытие периода), перенесите их или включите на новом. Они не переезжают вместе с базой автоматически, если зависят от планировщика ОС.
Проверка скорости и запуск: тесты на живой нагрузке
Новый сервер должен работать не хуже старого. Проверьте это, пока люди не жалуются.
Что сделать в первый день:
- ⚡ Замерьте время запуска базы и формирования тяжёлого отчёта. Сравните с тем, что было раньше. Если результат хуже, а железо мощнее, ищите причину в настройках, а не в мощности.
- 📈 Проведите документ, который раньше проводился долго. Для проверки — самый тяжёлый на вашем участке, например закрытие месяца или большое поступление.
- 👥 Попросите 3–5 человек работать как обычно и сообщать о тормозах.
- 💾 Проверьте скорость диска и сети. Узкое место чаще всего именно здесь, а не в процессоре.
Типичные причины медленной работы после переезда:
- Память СУБД не ограничена. MS SQL может занять почти всю память и оставить сервер 1С без неё. Задайте лимит памяти для СУБД.
- Служба 1С работает на слабом диске. Журналы кластера и временные файлы лучше держать на SSD.
- Антивирус проверяет каталоги 1С и базы. Добавьте в исключения каталоги данных и процессы платформы.
- Параметры электропитания. На Windows Server стоит план «Высокая производительность».
- Устаревшая статистика в СУБД. После восстановления из копии обновите статистику и перестройте индексы. Это часто даёт ощутимый прирост.
Если всё работает не хуже, оставьте новый сервер в наблюдении на неделю и не торопитесь выключать старый.
Завершение: резервные копии и вывод старого сервера
После переключения пользователей не удаляйте всё сразу.
Порядок вывода:
- Оставьте старый сервер включённым, но закрытым для работы на 1–2 недели. Если вскроется ошибка, у вас есть откат.
- Настройте резервное копирование на новом сервере и проверьте его. Нужна не только копия, но и пробное восстановление. Копия, которую ни разу не пробовали развернуть, остаётся гипотезой.
- Сделайте финальную копию старых баз и сохраните её отдельно, вне старого сервера. Хранить её стоит хотя бы до закрытия ближайшего отчётного периода.
- Освободите ресурсы: остановите службу сервера 1С и СУБД на старой машине, снимите публикации, отключите регламентные задания.
- Лицензии: если ключ был на старом сервере, перенесите его физически или завершите процедуру переноса программной лицензии.
- Обновите документацию: адреса, порты, учётные записи, имя кластера. Через год вы сами этого не вспомните.
- 1–3 дняАудит и подготовка нового сервера
- 0,5–1 деньУстановка платформы, СУБД, лицензий
- 1 деньПробный перенос базы и проверка
- 2–6 часовОстановка работы и финальный перенос
- 1 деньПереключение пользователей и проверка
- 1–2 неделиНаблюдение, затем вывод старого сервера